1、String 字符串常量
StringBuffer、StringBuilder 字符串变量
2、执行速度
StringBuilder>StringBuffer>String
例:
String string = "ab";
string = string + "cd";
JVM执行:先创建一个对象string,赋予ab,然后再创建一个对象string执行string+“cd”,也就是第一次创建的string并没有改变,所以说String是不可改变的对象。每当String操作字符串的时候,实际上实在不断创建String新的对象,原来的对象就会被GC回收掉。
而StringBuffer,StringBuilder操作字符串的时候,实际上实在一个对象上操作的。
3、StringBuilder,StringBuffer的区别
StringBuffer 线程安全
StringBuilder 非线程安全
本文详细解析了Java中String、StringBuffer及StringBuilder三种字符串类型的特性、执行效率及应用场景。通过实例对比了它们在内存中的表现形式,重点阐述了String的不可变性、StringBuilder与StringBuffer在性能上的差异以及线程安全性。
26万+

被折叠的 条评论
为什么被折叠?



