黑马程序员技术交流社区

标题: StringBuffer [打印本页]

作者: 周飞飞    时间: 2015-8-13 15:00
标题: StringBuffer
String  和 StringBuffer的区别
        String 初始化就不能改变
        StringBuffer 可以操作其中的内容 他是一个容器
StringBuffer是字符串缓冲区:不能被继承        是一个容器
1,添加
        StringBuffer append();添加到后面
        StringBuffer insert(index,str)插入到指定的位置
2,删除
        StringBuffer delete(int start ,int end)删除缓冲区中的内容包头不包尾
        StringBuffer deleteCharAt(int index);删除指定位置的
        清空缓冲区 sb.delete(0,sb.length)
3,获取
        char charAt(int index)
        int indexOf(String str);
        int lastindexOf(String str)
        int length();
        String substring(int start,int end);

4,修改
         StringBuffer replace(int start, int end, String str) ;
         void setCharAt(int index, char ch);
5,反转
         StringBuffer reverse()  将此字符序列用其反转形式取代
6, void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
          将字符从此序列复制到目标字符数组 dst。

StringBuilder 线程不同步 其中的方法和StringBuffer中完全相同
StringBuffer   线程同步

升级三个因素
提高安全 提高效率 简化书写
作者: burningzzy    时间: 2015-8-13 18:18
总结的不错。
作者: 樱花飘过    时间: 2015-8-13 19:04
楼主我补充下区别StringBuffer和String的区别
StringBuffer:可变字符序列     即 一个该类的对象相当于一个字符串的容器。

  效率更快,避免了过多字符串常量垃圾对象的产生
前者用于生成字符串,后者用于表示字符串
  前者为常量,后者是“可变化的量”





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2