澳门新葡8455最新网站 1

Java中String、StringBuilder、StringBuffer区别

澳门新葡8455最新网站 1

澳门新葡8455最新网站,Character

1、char占两个字节,Character是char的包装类型

2、范围是\\u0000~\\uffff

3、缓存128位ASCII码

4、valueOf(char->Character)当创建一个Character时建议调用此方法提高性能

5、第0平面0000~FFFF的CodePoint使用一个char表示,其他平面的CodePoint使用高位代理+低位代理两个char表示

高位代理区间:D800~DBFF(1024,在第0平面)

低位代理区间:DC00~DFFF(1024,在第0平面)

String、StringBuilder、StringBuffer

1、String不可变字符序列,StringBuilder和StringBuffer可变字符序列。

2、StringBuilder和StringBuffer的API兼容,建议在单一线程下优先使用StringBuilder来提高性能。而StringBuffer是线程安全的。

3、StringBuilder和StringBuffer默认容量16。

4、容量扩充策略:

1)选取原容量的2倍加2和指定容量比较的最大值,作为新容量

2)不得大于Integer.MAXVALUE,会出现OutOfMemoryError异常