String, StringBuffer和StringBuilder

来源:互联网 发布:腾讯云域名所有者变更 编辑:程序博客网 时间:2024/05/16 09:36

String : 

早起的版本:

  private final char[] value;

now:

// The associated character storage is managed by the runtime. We only    // keep track of the length here.    //    // private final char value[];    private final int count;

不过,两种版本都可以肯定,String 本身的内容不能修改的。对String的操作,比如拼接,是通过重新生成一个 String 对象来达到。


StringBuilder 与 StringBuffer 有公共父类 AbstractStringBuilder(抽象类)。

该 abstract 类有个成员变量:

/** * The value is used for character storage. */char[] value;

我们对 StringBuffer 和 StringBuilder 的操作,比如append等,不用生成新的对象,只是操作 char[].

      StringBuffer: 线程安全

      StringBuilder:  线程不安全

0 0
原创粉丝点击