StringBuffer类
简介
一个线程安全的,字符的可变序列
一个字符串缓冲区就像一 String,但是可以修改
在任何一个时间点,它包含一些特定的字符序列,但该序列的长度和内容可以通过某些方法调用
构造方法
StringBuffer() #构造一个没有字符的字符串缓冲区,并构造了16个字符的初始容量
常用方法
StringBuffer append(Object obj) #追加的 Object参数的字符串表示形式
StringBuffer insert(int offset, Object obj) #插入的 Object参数的字符串表示形式到这个字符序列
StringBuffer reverse() #使这个字符序列被序列的反转所取代
String toString() #返回表示该序列中的数据的字符串
String,StringBuilder,StringBuffer三者的区别
- 运行速度(执行速度)
运行速度快慢为:StringBuilder > StringBuffer > String
原因:String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的
- 线程安全
在线程安全上,StringBuilder是线程不安全的,而StringBuffer是线程安全的
总结
String:适用于少量的字符串操作的情况
StringBuilder:适用于单线程下在字符缓冲区进行大量操作的情况
StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况