A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈鹏No1 中级黑马   /  2015-7-24 15:29  /  422 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

StringBuffer是字符串缓冲区,是一个容器。
面盆理论:往面盘里面放些面,面盆还是原来的;放些水,还是原来的面盆。就是不管添加什么,返回的对象还是该对象。
特点:
1,长度是可以变化的。
2,可以操作多个数据类型。
3,最终会通过toString方法变成字符串。
当数据类型不确定,而且最终变成字符串,且个数不确定时用缓存区。
功能:
1,存储
        StringBuffer append();将指定数据作为参数添加都原数据末尾。
        StringBuffer insert(insertIndex,任何参数);将数据作为作为指定参数插入到指定位置。
2,删除
        StringBuffer delete(start,end);删除缓冲区中的数据,删除区域包含Start,不包含end。
        StringBuffer deleteCharAt(index);删除指定位置的字符。
        清空缓冲区:new StringBuffer();//新开一个缓存区也可以,但是不用这个方法。
                            delete(0,sb.length);//清空缓冲区,就用这个方法。
3,获取
        Char charAt(index);获取指定位置字符。
        Int indexOf(String str);获取字符的位置。
        Int lastIndexof(String str);获取字符最后一次出现的位置。
        Int length();
        String substring(int start,int end);
4,修改
        Replace(int start,int end,String str);
        Void setCharAt(index,char);//替换某一位字符,只替换,不返回。
5,反转
        StringBuffer reverse()

6,void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin);将缓冲区中指定数据存储到指定字符中。包含头,不包含尾。

7,JDK1.5版本之后出现了StringBuilder,StringBuffer是线程同步的,StringBuilder是线程不同步的。
使用的时候,单线程时用StringBuilder效率更高,多线程时建议用StringBuffer。
以后开发,建议使用StringBuilder,因为效率高。

版本升级的三要素:
提高效率,简化书写,提高安全性。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马