String类

String类

1、概述
“abc”是String类的一个实例,或者说是String类的一个对象
字符串面值“abc”也可以看成是一个字符串对象
字符串是常量,一旦被赋值就不能被改变
字符串本质是一个字符数组
2、String类的构造方法
String(String original):把字符串数据封装成字符串对象
String(char[] value):把字符数组的数据封装成字符串对象
String(char[] value,int index,int count):把字符数组中的一部分数据封装成字符串对象
3、创建字符串对象两种方式的区别
String str =“Hello”,这个是存在方法区中的常量池里
String str = new String(“Hello”);这个是存在堆中
String类
4、String的判断功能
boolean equals(Object object)判断两个的字符串内容是否相等
boolean equalsIgnoreCase(String str)忽略大小写判断字符串内容
boolean startWith(String str)是否以字符串str开头
boolean endWith(String str)是否以字符串str结尾
5、转换功能
char[] toCharArray()把字符串转换为字符数组

StringBuilder类

1、方法
public int capacity():返回当前容量(理论值),一般情况下初始分配值是16
public int length():返回长度(已经存储的字符个数)
public StringBuilder append(任意类型):添加数据,并返回自身对象
public StringBuilder reverse():反转功能
2、StringBuffer
相同:StringBuffer和StringBuilder类似,有公共父类AbstractStringBuilder(抽象类)
不同:StringBuffer会在方法上加synchronized关键字,进行同步,是线程安全的。
普通的单线程选择StringBuilder就可以,速度快一些;通常情况下速度StringBuilder>StringBuffer>String,但是并不是绝对的。