StringBuffer类的常用方法

StringBuffer练习

String Buffer出现的背景:因为String是常量,并且内容和长度不可改变,要想进行改变需要建立一个新的字符串
例如:

public class StringBufferTest {
    public static void main(String[] args) {
        String s="QWE";
        String s1=s+"R";//要想在字符串s里进行修改需要在新建一个字符串,才能修改比较麻烦
        System.out.println(s1);
    }
}

于是有了String Buffer,而且StringBuffer可以改变和修改。主要用于文件的读取和处理
下面是关于String Buffer的一些常用方法
1.增


        //StringBuffer:缓冲区,暂存,可以改变
        StringBuffer st=new StringBuffer();//首先新建一个String Buffer
        st.append("a");//往st里添加数值
        st.append("b");
        st.append("c");
        st.append("d");
        System.out.println(st);

2.删

 st.delete(0,2);
        System.out.println(st);

删除零到二也就是abc,是删出下标为2的字符以前的是一个[ )的区间

3.替换

 st.replace(1,3,"0");//替换:但可以多个替换成同一个
        int length = st.length();//因为替换字符串的长度也发生了变化要注意
        System.out.println(length);
        System.out.println(st);

这里把abcd替换成了a0d,替换了下标为3字符之前的数值,同时字符串的长度也变化了。这里也要注意如果原字符串只有一个位置,只能替换那一个位置。不然会报错如下

异常:StringIndexout Bounds Exception
越过,越界

4.插入

StringBuffer st1=new StringBuffer();
        st1.append("1234");
        st1.insert(2,"我是新插入的字符串");
        System.out.println(st1);

5.反转

 StringBuffer st1=new StringBuffer();
        st1.append("1234");
        st1.reverse();
        System.out.println(st1);

关于StringBuilder 和StringBuffer的区别
StringBuilder速度更快,但线程不安全,并且是单线程操作
StringBuffer:线程安全,字符串大小变化时会自动增加容量,而且是多线程操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值