StringBuffer是字符串缓冲区


/*
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());
    }

}

 

转载于:https://www.cnblogs.com/cailingsunny/p/4695092.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值