String,StringBuilder,StringBuffer三者的区别
String是被final修饰的,因此是不可变的对象,所以在每次对String类型进行改变的
同时,相当于生成了一个新的String对象,在经常要改变内容时,最好别用String,因
为对内存会造成极大的浪费,当内存中的无引用对象多了,JVM的GC会开始工作。因此,
此时使用StringBuilder和StringBuffer就会比String好很多。因为这两者可以使用appen
来进行拼接操作,效率要远远高于String对象的“+”操作。
StringBuilder和StringBuffer两者可谓是双胞胎,只不过StringBuffer是线程安全的可变字符序列
而StringBuilder是非线程安全的可变字符序列,那是因为StringBuffer的很多方法都被synchronized
修饰了,这个关键字是线程同步机制设定的。
本文详细解析了String、StringBuilder和StringBuffer的区别,重点介绍了它们在内存消耗和性能上的对比,以及在多线程环境下的表现,帮助开发者选择合适的字符串操作类。
815

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



