1.StringBuffer是线程安全的可变字符序列。
2.StringBuffer类是字符串缓冲区,是一个容器,可以存储各种基本数据类型。
3.特点: 长度可以变化,可以直接操作基本数据类型,可以通过toString方法变成字符串。
4.存储:
- append(数据); 将指定的数据添加到已有缓存区的结尾处,返回调用它的缓冲区对象。(这个数据可以是int long char floar double char[] boolean String Object StringBuffer)
- insert(index,数据);将数据插入到缓冲区中指定的角标位置
5.获取:
- char charAt(int index);获取指定位置的字符
- int indexOf(String str);返回指定字符串在缓冲区中第一次出现的位置(可以从指定位置开始查找)
- int lastIndexOf(String str) :返回指定字符串最后一次在缓冲区中出现的位置(可以从指定位置开始查找)
- int length()
- String subString(int start,int end);从指定位置截取缓冲区字符串,返回字符串对象(包含头不包含尾)
6.修改:
- StringBuffer replace(start,end,String str);将缓冲区中指定位置的字符串替换成指定的字符串;
- setCharAt(index,char ch);将指定位置的字符替换成指定字符
7.反转:
- reverse();将缓冲区中的字符串反转顺序,返回字符串缓冲区对象。
- 将缓冲区中指定位置的数据存储到指定字符串中的指定位置。getChars(int srcBegin,int srcEnd,char ch[],int begin)
8.JDK1.5之后出现了StringBuilder类,StringBuilder是StringBuffer类的简易替换。
StringBuffer是支持线程同步的,线程安全。
StringBuilder不支持线程同步,但提高了效率,在使用单线程的时候使用StringBuilder较好。
9.JDK升级的三个因素:1.提高效率2.简化书写3.安全性能