构造方法:
StringBuffer():构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符。
StringBuffer(int capacity):构造一个其中不带字符的字符串缓冲区,其初始容量为 capacity个字符。
StringBuffer(String str):构造一个其中带字符的字符串缓冲区,其初始容量为??? 个字符。
成员方法:
public int length():返回长度(字符数)。实际值
public int capacity():返回当前容量。 理论值
添加功能:添加元素,并返回本身的对象。
A:public StringBuffer append(String str):追加数据,在末尾添加
B:public StringBuffer insert(int offset,String str):插入数据,在指定位置添加
删除功能:
public StringBuffer deleteCharAt(int index):删除指定索引处的字符
public StringBuffer delete(int start,int end):删除从start开始到end结束的数据,包左不包右
替换功能:
public StringBuffer replace(int start,int end,String str):用str替换从start到end的数据
反转功能:
public StringBuffer reverse()
截取功能:返回值类型是String类型,本身没有发生改变
public String substring(int start)
public String substring(int start,int end)
相互转换:
String -- StringBuffer
String s = "hello";
// 方式1
StringBuffer sb1 = new StringBuffer(s);
// 方式2
StringBuffer sb2 = new StringBuffer();
sb2.append(s);
StringBuffer -- String
StringBuffer sb = new StringBuffer("world");
//方式1
String s1 = sb.substring(0);
//方式2
String s2 = sb.toString();
//方式3
StringBuffer():构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符。
StringBuffer(int capacity):构造一个其中不带字符的字符串缓冲区,其初始容量为 capacity个字符。
StringBuffer(String str):构造一个其中带字符的字符串缓冲区,其初始容量为??? 个字符。
成员方法:
public int length():返回长度(字符数)。实际值
public int capacity():返回当前容量。 理论值
添加功能:添加元素,并返回本身的对象。
A:public StringBuffer append(String str):追加数据,在末尾添加
B:public StringBuffer insert(int offset,String str):插入数据,在指定位置添加
删除功能:
public StringBuffer deleteCharAt(int index):删除指定索引处的字符
public StringBuffer delete(int start,int end):删除从start开始到end结束的数据,包左不包右
替换功能:
public StringBuffer replace(int start,int end,String str):用str替换从start到end的数据
反转功能:
public StringBuffer reverse()
截取功能:返回值类型是String类型,本身没有发生改变
public String substring(int start)
public String substring(int start,int end)
相互转换:
String -- StringBuffer
String s = "hello";
// 方式1
StringBuffer sb1 = new StringBuffer(s);
// 方式2
StringBuffer sb2 = new StringBuffer();
sb2.append(s);
StringBuffer -- String
StringBuffer sb = new StringBuffer("world");
//方式1
String s1 = sb.substring(0);
//方式2
String s2 = sb.toString();
//方式3
String s3 = new String(sb);
StringBuffer和StringBuilder
* StringBuffer:
* 线程安全的可变字符序列。
*
* String和StringBuffer的区别?
* A:String的内容不可变
* B:StringBuffer的内容可变
*
* StringBuffer和StringBuilder的区别?
* A:StringBuffer 线程安全,效率低
* B:StringBuilder 线程不安全,效率高
*
* 线程安全:(同步),效率低
* 线程不安全:(不同步),效率高