码迷,mamicode.com
首页 > 其他好文 > 详细

StringBuffer是字符串缓冲区

时间:2015-08-02 10:02:33      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:


/*
StringBuffer是字符串缓冲区

是一个容器。特点:(数据类型不确定,个数不确定可使用)
1、而且长度是可变化的。
2、可以直接操作多个数据类型。
3、最终会通过toString方法变成字符串。
CURD
C create U update R read D delete

1、存储。
StringBuffer append():将指定数据作为参数添加到已有数据的结尾处。
StringBuffer insert(index,数据);可以将数据插入到指定index位置
2、删除
StringBuffer delete(start,end):删除缓冲区的数据,包含start,不包含end
StringBuffer deleteCharAt(index);删除指定位置的字符。
3、获取
Char charAt(int index);
int indexOf(String str);
lastIndexOf(String str);
int length();
String substring(int start,int end); 返回String
4、修改.

StringBuffer replace(start,end,string);
void setCharAt(int index,char ch)

5、反转。
StringBuffer reverse();

6、将缓冲区中指定数据存储到指定字符数组中。
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
目的 目的开始位
jdk1.5版本之后出现了StringBuffer

StringBuffer是线程同步
StringBuilder是线程不同步 提高效率 方法一样,只是没有锁

以后开发建立,使用StringBuilder


java的升级三个因素:
1、提高效率;
2、简化书写;
3、提高安全性。
*/

public class StringBufferDemo {
    
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }

    public static void main(String[] args) {
        //method_update();
        StringBuilder sb = new StringBuilder("abcdef");
        char[] chs = new char[6];
        sb.getChars(1, 4, chs, 1);
        
        for(int x=0;x<chs.length;x++) 
        {
            sop("chs["+x+"]="+chs[x]+";");
        }
    }
    
    public static void method_update()
    {
        StringBuffer sb = new StringBuffer("abcde");
        //sb.replace(1, 4, "java");
        sb.setCharAt(2, ‘k‘);
        
        sop(sb.toString());
    }
    public static void method_del()
    {
        StringBuffer sb = new StringBuffer("abcde");
        //sb.delete(1, 3);
        //清空缓冲区!!!
        //sb.delete(0, sb.length());
        sb.delete(2, 3);
        //sb.deleteCharAt(2);
        sop(sb.toString());
    }
    public static void method_add()
    {
        StringBuffer sb = new StringBuffer();
        //方法调用链 ,返回还是对象所以能够调用方法
        sb.append("abc").append(true).append(34);
//        StringBuffer sb1 = sb.append(34);
//        //sop("sb==sb1"+sb==sb1);
        StringBuffer insert = sb.insert(1,"qq");
        sop(sb.toString());//abctrue34
        
//        sop(sb1.toString());
    }

}

 

StringBuffer是字符串缓冲区

标签:

原文地址:http://www.cnblogs.com/cailingsunny/p/4695092.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!