1、StringBuffer:线程安全的可变字符序列。
2、StringBuffer和String的区别:
StringBuffer:长度和内容都可变,拼接字符串节省空间。
String:长度和内容不可变,拼接字符串浪费更多的空间。
3、构造方法:
public StringBuffer():
public StringBuffer(int capacity):指定容量的字符串缓冲区对象。
public StringBuffer(String str):指定字符串内容的字符串缓冲区对象。
4、StringBuffer的方法:
public int capacity():返回缓冲区对象的当前容量,理论值。
public int length():返回缓冲区对象的长度,实际值。
5、StringBuffer的添加功能:
public StringBuffer append(String str):
public StringBuffer insert(int offset,String str):
6、StringBuffer的删除功能:
public StringBuffer deleteCharAt(int index):删除缓冲区中指定位置的字符。
public StringBuffer delete(int start,int end):删除缓冲区中起始位置到结束位置的字符串。
7、StringBuffer的替换功能:
public StringBuffer replace(int start,int end,String str):将缓冲区中起始位置到结束位置的字符串替换为指定的字符串。
8、StringBuffer的反转功能:
public StringBuffer reverse():缓冲区内容反转。
9、StringBuffer的截取功能:
public String substring(int start):返回缓冲区中指定位置到结尾的字内容。
public String substring(int start,int end):返回缓冲区中起始位置到结束位置的内容。
10、String、StringBuffer、StringBuilder三者的区别?
String是内容不可变的,而StringBuffer和StringBuilder都是内容可变的。
StringBuffer是同步的,数据安全,但效率较低。
StringBuilder是不同步的,数据不安全,但效率高。
11、String和StringBuffer作为参数传递的区别?
String作为参数传递和基本类型作为参数传递一致:是值传递。
StringBuffer作为参数传递和引用类型作为参数传递一致:是引用传递。