您的位置:首页 > 产品设计 > UI/UE

String, StringBuffer和StringBuilder

2017-02-12 00:33 260 查看
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:  线程不安全
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: