Java——API知识

1、String类

-----String类描述的是文本字符串序列,用于操作和创建字符串。

-----创建String类的对象的两种方式:  ①""直接赋值法     ②new关键字法

-----字符串对象的比较: 

字符串对象的比较

      A. String str1= "found"这个语句会先检查字符串常量池中是否存放有"found"这个字符串对象,如果没有存在,那么就会在字符串常量池中创建这个字符串对象,如果存在则直接返回该字符串的内存地址值。

      B. String str3 = new String("found")该语句会创建两个对象。首先会检查字符串常量池中是否存在found这个字符串对象,如果不存在就会创建,如果存在就返回内存地址值,创建出来后,new String这个语句就会在堆内存中开辟一个字符串对象。总共两个对象。

      C.为什么str1 == str2 →true,str3 == str4 → false?

①比较两个String不应该用==,第二种情况str3 == str4使用str3.equals(str4)就是true了。

②在java里物体的名字相等于一个标签。当你做第一种时,"found"被创造出来,并打上了一个str1的标签,然后同一个物体又被打上了str2这个标签,但本质上是同一个物体,所以str1 == str2 →true。

③第二种,str4是一个新的Object,存储位置和str3不一样,str3和str4指向了不同的对象。所以str3 == str4 → false。

-----获取字符方法:

int length() 获取字符串的长度

char charAt(int index) 获取特定位置的字符 (角标越界)

int indexOf(String str) 获取特定字符的位置(overload)

int lastIndexOf(int ch) l获取最后一个字符的位置

获取字符

-----判断方法

字符串的判断

-----转换方法

字符串的转换

-----其他方法

String replace(char oldChar, char newChar) 替换

String[] split(String regex) 切割

String substring(int beginIndex)

String substring(int beginIndex, int endIndex)截取字串

String toUpperCase() 转大写

String toLowerCase() 转小写

String trim() 去除空格

-----练习

① 去除字符串两边空格的函数。

去除字符串两边空格函数

补:String自带的去除两边空格函数trim()源代码

String自带函数trim()

②获取上传文件名 "D:\20120512\day12\Demo1.java"。

获取上传文件名

③将字符串对象中存储的字符反序。

反序

④求一个子串在整串中出现的次数

子串在整串中出现的次数
原理



2、StringBuffer

-----由于String是不可变的,所以导致String对象泛滥,在频繁改变字符串对象的应用中,需要使用可变的字符串缓冲区类。

-----特点:①默认缓冲区的容量是16;②线程安全的所有的缓冲区操作方法都是同步的,效率低。

①添加方法

StringBuffer("jack") 在创建对象的时候赋值

append() 在缓冲区的尾部添加新的文本对象

insert() 在指定的下标位置添加新的文本对象

②查看

toString() 返回这个容器的字符串

indexOf(String str) 返回第一次出现的指定子字符串在该字符串中的索引。

substring(int start) 从开始的位置开始截取字符串

查看

③修改

修改字符串

④删除

删除字符串

⑤反序

反序字符串



3、StringBuilder

StringBuilder 是JDK1.5之后提出的,线程不安全,但是效率要高。用法与StringBuffer类似。

===StringBuffr与StringBuilder的区别?

     StringBuffer和StringBuilder类都表示内容可以被修改的字符串,StringBuilder是线程不安全的,运行效率高,如果一个字符串变量是在方法里定义,这种情况下只可能有一个线程访问它,不存在不安全的因素,则用StringBuilder。如果在一个类里面定义成员变量,并且这个类的实例对象会在多线程环境下使用,用StringBuffer。



4、System

获取系统属性



5、Runtime

运行环境



6、Date

日期



7、Math

Math:类封装了很多数学的功能。

练习:生成一个校验码

随机

(参考自今日头条小小爆酱)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 5,397评论 0 3
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,954评论 18 399
  • 1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?答:可以有多个类,但只能有一个publ...
    岳小川阅读 4,502评论 0 2
  • 在编写程序的过程中,不了避免的要用到字符串,所以String类的常用方法的用法是必须掌握的。学习一个类的使用方法最...
    Geg_Wuz阅读 5,117评论 0 4
  • 有一盘拌菜 细细尝这最后的味道 刚开始 我一个人品尝着 味道鲜美 可惜无人分享快乐 渐渐地 秋叶落了雪花飘了 春花...
    TJYzzd阅读 818评论 0 0