StringBuffer和StringBuild两个类的区别主要是:

StringBuffer JDK1.0提供的类,线程安全,做线程同步检查,效率较低。

StringBuild JDK1.5提供的类,线程不安全,不做线程同步检查,因此效率较高。建议采用该类

package demo08;

public class TestStringBuilder {
    public static void main(String[] args) {
        StringBuilder builder = new StringBuilder("123");
        builder.append("321");//在末尾追加子串
        System.out.println(builder);

        builder.append("abc");
        builder.append("xyz");
        System.out.println(builder);

        builder.insert(3,"EF");
        System.out.println(builder);

        builder.setCharAt(3,'G');
        System.out.println(builder);

        builder.replace(3,6,"000");
        System.out.println(builder);

        builder.deleteCharAt(3);
        System.out.println(builder);
        builder.delete(6,builder.length());
        System.out.println(builder);
        
        builder.reverse();
        System.out.println(builder.toString());
        //StringBuffer---->String
        String str = builder.toString();
        System.out.println(str);
    }
}

运行结果:

StringBuild类底层和String类一样,也是一个字符串数组value,但是不是final的,变量count表示的是底层字符串数组的元素的真实个数,不是底层字符数组

的长度。

 


版权声明:本文为qq_48759664原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_48759664/article/details/117230992