Stringbuffer/StringBuilder: 可变的字符串, 对字符串的操作,都在原来的空间进行操作
1 .为什么使用StringBuffer类
2.StringBuffer的使用
创建StringBuffer对象
如果StringBuffer存放的内容大于16个字节, 推荐大家使用指定内容的构造方法, 设置的容量大于等于存放的内容的大小
如果没有指定容量, StringBuffer进行自动扩容, 扩容过程进行拷贝,这个很牺牲性能.
3.StringBuffer和StringBuilder
4.StringBuffer常用方法
-
往字符串末尾追加: append() 与String的+操作一样
StringBuffer append(任意数据类型) 返回的Stringbuffer就是原理的StringBuffer, 都在原来的空间进行操作,
StringBuffer 的方法返回原理的Stringbuffer对象, 目的: 实现方法的连写
-
往字符串指定位置插入内容
StringBuffer insert(int 下标,任意类型的内容 )
-
修改指定位置上的字符
void setCharAt(int 下标, 修改字符)
-
删除指定范围的字符
StringBuffer delete(int 开始下标,int 结束下标)
注意: 包括开始位置, 不包括结束位置
-
删除指定位置上一个字符
StringBuffer deleteCharAt(int 下标)
-
字符串反写
StringBuffer reverse()
-
替换指定范围的内容
StringBuffer
replace(int start, int end, String str)
8.把StringBuffer 变成String
String toString()
如果一个String字符串,进行大量的修改操作(插入,追加,修改,删除), 为了提高性能, 先把String转换为Stringbuffer,通过StringBuffer进行修改操作, 最后把StringBuffer变成String(实际项目中,前端传递内容都是String,而不是StringBuffer)