StringBuffer 是一个容器(字符串缓冲区),而且长度是可以变化的,可以一次操作多个数据类型,最后可以通过toString方法变成字符串,可以对字符串进行CURD(Create Update Read Delete)。
1.添加
2.删除StringBuffer append();将制定数据作为参数添加到已有数据结尾处
StringBuffer insert(index,数据):可以将数据插入到指定index位置
StringBuffer delete(start,end):删除缓冲区中的数据,包含start,不包含end
StringBuffer deleteCharAt(index):删除指定位置的字符。
3.获取
4..修改和String类的方法基本相同
5.反转StringBuffer replace(start,end,string);
void setCharAt(int index,char ch);
6. void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)将缓冲区中的指定数据存放到指定数组中StringBuffer reverse();
class StringBufferDemo{
public static void main(String[] args){
StringBuffer sb = new StringBuffer("abcdefg");
char[] chs = new char[4];
sb.getChars(1,3,chs,1);//将sb中角标1~3(包含1不包含3)的字符存到chs数组中,并且从数组的1角标开始存
for(int x=0;x<chs.length;x++)
sop("chs["+x+"]="+chs[x]);
}
public static void sop(String str){
System.out.println(str);
}
}
-------------------------------------------------------------
从JDK1.5之后出现StringBuilder,和StringBuffer的不同之处在于
StringBuffer 是线程同步
StringBuilder 是线程不同步,也就意味着StringBuffer的安全性更高,可是如果是单线程的程序,StringBuilder的快捷更合适。
开发建议用StringBuilder,因为同步被Lock替代了