String固定长度,引用的字符串内容无法改变
例如,String s = 'abc';
s = 'def';
那么 s 字符串对应的地址已经改变了
StringBuider 声明一个对象时,指向堆中的一块空间,包括两个属性 value 和 count
其中 value 属性类似动态数组,可以在地址不变的情况下动态添加内容
count 属性是数组长度,当数组内容达到最大值,会进行扩容,开辟一块新地址,旧内容拷贝到新地址
StringBuffer同理
StringBuffer JDK 1.0 开始,线程安全,效率低
StringBuilder JDK 1.5 开始,线程不安全,效率高
这是我整理的笔记,目前还在学习阶段,文章中可能有错误和不足,欢迎大家斧正!