黑马程序员技术交流社区
标题:
StringBuffer
[打印本页]
作者:
陈鹏No1
时间:
2015-7-24 15:29
标题:
StringBuffer
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);将缓冲区中指定数据存储到指定字符中。包含头,不包含尾。
3.png
(39.66 KB, 下载次数: 3)
下载附件
2015-7-24 15:30 上传
7,JDK1.5版本之后出现了StringBuilder,StringBuffer是线程同步的,StringBuilder是线程不同步的。
使用的时候,单线程时用StringBuilder效率更高,多线程时建议用StringBuffer。
以后开发,建议使用StringBuilder,因为效率高。
版本升级的三要素:
提高效率,简化书写,提高安全性。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2