上一篇我们说到由于String 的不可变性,因此在每次对String类型进行改变的时候都相当于创建了一个新的对象,然后将指针指向新的String对象,这样在内存中反复被创建销毁对系统性能有极大的影响,JVM中对象变多了,其GC垃圾回收机制也要开始工作,速度会变慢。所以如果需要经常改变字符串的内容就不要用String了。
StringBuffer
-
StringBuffer是被其对象本身进行操作,不需要再生成新的对象
-
其实是相当于对象的拼接 append()方法最常用
-
其是可变的,线程安全的,适用与多线程操作
StringBuiler
- 是可变的,线程不安全的,适用于单线程操作,且速度快,在不考虑线程安全的情况下建议使用这个
更高阶的版本请参考这篇博文:https://blog.csdn.net/itchuxuezhe_yang/article/details/89966303)