- StringBuffer
为了解决String字符串操作导致的那日村冗余,提高效率,Java中提供了StringBuffer和StrinBuilder来操作字符串,并且提供了很多方法,便于程序员开发。
StringBuffer和StringBuilder中都有char类型可变长数组作为字符串的保存空间。使用到的方法和ArrayList类似。
StringBuffer 线程安全,效率较低。
StringBuilder 线程不安全,效率较高
- StringBuffer构造方法
StringBuffer();
创建一个为存储任何字符串信息的空StringBuffer空间,底层初始化一个16字符的char类型数组
StringBuffer(String str);
根据提供的String类型字符串创建对应的StringBuffer空间,底层char类型数组的容量会根据str.length + 16决定,并且保存对应的str。
- 添加方法
append(Everything)
在StringBuffer和StringBuilder对象中,添加另外的数据,并且当作字符串处理。
insert(int index , Everything)
在StringBuffer和StringBuilder对象中,在指定的下标位置,添加其他内容,并且当作字符串处理
- 查看方法
String toString();将底层的 char 类型数组保存的字符内容转换成对应的String 类型字符串返回int length();返回底层 char 类型数组中有多少有效元素。String substring(int begin);从指定位置开始获取到 char 类型数组有效元素末尾对应的字符串,截取操作,String substring(int begin, int end);从指定位置 begin 开始到 end 结束,获取对应的字符串,要头不要尾int indexOf(String str);指定元素字符串所在下标位置int lastIndexOf(String str);指定元素字符串最后一次所在下标位置
- 修改方法
replace(int start , int end ,String srt);
从指定位置start开始,到end结束,start《= n 《 end,使用srt替换
setCharAt(int index , char ch);
使用ch替换指定下标的index对应的字符
- 删除和反序
delete(int start , int end );
删除指定范围以内的字符 start<= n < end
deleteCharAt(int index);
删除指定下标的字符
reverse();
逆序