Java中的String和StringBuffer的区别

来源:互联网 发布:java短信轰炸机代码 编辑:程序博客网 时间:2024/04/28 10:24

String和StringBuffer的区别:

    String的内容一旦声明就不可以再改变。如果再改变,则改变的肯定是String的引用地址。

1、String的创建方法:

        String str = "12345";

        String str = new String("12345");

     StringBuffer的创建方法:

        StringBuffer类有一个构造方法,构造方法格式为:public StringBuffer(){}。

       创建一个StringBuffer对象:StringBuffer buf = new StringBuffer();

2、String和StringBuffer的关系有点类似常量和变量的关系。StringBuffer对象的内容是可以修改的。String对象的内容是无法修改的,如果修改也是改变的引用地址,创建了新对象。

3、StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不会产生新的对象,在内存使用上要优于String。所以对于频繁修改字符串内容的地方,优先使用StringBuffer完成。

4、String类中,没有用来修改已有字符串中某个字符或者子字符串的方法,String类的对象是不可以改变的。然而,不可改变的字符串具有一个优点,编译器可以把字符串设为共享的。

5、StringBuffer是线程安全的。

0 0