优势:
字符序列可变(字符串缓冲区)
即:增删改,在当前字符的对象上变化,不会浪费过多空间
StringBuffer()
默认是16个字符
StringBuffer(int size)
size个字符
StringBuffer(String s)
默认是max(16,s.length() );
容量不足时,系统自动维护。
维护规则: MAX(字符新长度,原容量*2+2)
增删改查
//增加 StringBuffer append(... ...);//追加数据 StirngBuffer inser(int index,... .. );//将数据插入到指定的位置 //删除 StringBuffer deliete(int startindex ,int endindex);//从当前对象字符串中删除一段字符串 StringBuffer deleteCharAt(int index);//删除指定位置的字符 //修改 StringBuffer replace(int startIndex,int endIndex,String str)//c把当前对象中的一个字符串替换成指定的字符串 void setCharAt(int index,char ch)//将指定位置的字符替换成ch //查询 getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)//将字符从次序列复制到目标字符数组dst indexOf lastIndexOf substring
其他
reverse();//反转 trimToSize();//将缓存区容量改为当前字符串的容量 toString();
//StringBuffer->String String (StringBuffer buffer);//构造方法 toString();//方法 //String->StringBuffer StringBuffer(String str);/构造方法
相同:
2个类拥有相同的构造方法和成员方法
区别: