Java中String, StringBuffer, StringBuilder

String:

  1,是字符串常量,一旦创建就不能修改。对于已经存在了的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。

  2,String也是final类,不能被继承。

  3,而且String是对象而不是基本类型。

  4,string重写了equals方法和hashCode()方法。

StingBuffer:

  1,是字符串可变对象,可以对字符串进行操作,修改字符串原有值时不会新建一个对象。

  2,执行效率较慢,但是线程安全

  3,StringBuffer没有覆盖equals方法和hashCode()方法。

  4,可以动态的构造字符数据,append()方法。

StringBuilder:

  1,也是字符串可变对象,同StringBuffer一样,可以对字符串进行操作,也不会新建对象。

  2,执行效率高效,但是线程不安全。

 

示例:

public class StringTest {

    public static void main(String[] args) {
        String s = "qwer1223";

        /**
         * 运行结果
         * 123qqq-hello
         * 1bAuff-buff-kill
         */
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("123qqq").append("-hello");
        System.out.println(stringBuffer);

        StringBuilder stringBuilder = new StringBuilder("buff");
        stringBuilder.append("-buff").insert(1,"A").append("-kill").insert(0, 1);
        System.out.println(stringBuilder);

    }
}

 

posted @ 2019-08-15 18:17  Noperx  阅读(88)  评论(0编辑  收藏  举报