黑马程序员技术交流社区

标题: StringBuffer [打印本页]

作者: Echo0912    时间: 2015-9-7 21:33
标题: StringBuffer
概述:线程安全的可变字符序列。
        补充:String是一个不可变的字符序列。
        记忆:
                线程安全,效率就低,线程不安全,效率就高。

        构造方法:
                StringBuffer();  //用到的比较多,理论长度是:16
                StringBuffer(int capacity);
                StringBuffer(String str);

        成员方法:
                public int capacity(); 理论值,初始容量。   //一般不用
                public int length();   实际值,实际的字符个数。


          添加:
                        public StringBuffer append(String str);   可以把任意类型的数据添加到缓冲区中,并且返回缓冲区本身
                        public StringBuffer insert(int index,String str);

                注意:
                        StringBuffer是一个字符串缓冲区,当new的时候才回去堆中创建一个对象,其实底层它是一个长度为16的字符数组。当调用添加方法的时候,不会再创建StringBuffer对象,而是直接往缓冲区添加。

                应用示例:
                        StringBuffer  sb = new StringBuffer();
                        sb.append(132);
                        sb.append("zs");
                        sb.append(true);
          删除:
                public StringBuffer deleteCharAt(int index);   删除指定位置的元素,并返回缓冲区本身。
                public StringBuffer delete(int strat,int end);  包左不包右。

          替换和反转:
                public StringBuffer replace(int start,int end,String str); 把start到end之间的数据(包左不包右),用str来替换。

                public StringBuffer reverse();  反转。

          截取:
                public String substring(int start);   //从指定位置截取到末尾
                public String substring(int start,int end);   //截取指定区间的数据,包左不包右。
                注意:这两个方法返回的不在是StringBuffer本身了。

                练习:
                        1、创建一个StringBuffer对象,
                        2、往里边添加数据,分别添加:wo,ai,heima这三个元素。
                        3、然后从中截取出 hei 这个字符。
作者: Wqi    时间: 2015-9-7 21:56
同班的...请问你哪位?每天看你同步发课堂笔记




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