【发布时间】:2014-03-06 04:33:29
【问题描述】:
我知道很多年前这个问题已经在很多网站上回答过很多次了。:P 我仍然有一些疑问,所以想发布这个。 基本区别在于,String 是不可变的,每次我们对 String 进行任何操作时,它都会创建一个新的 String 对象。
例如:-
String str = "some";
str = str + " text"
在上述情况下,创建了 2 个新字符串,而不是修改现有的 str,这可以通过使用 StringBuffer 来避免。
例如:-
StringBuffer str = new StringBuffer();
str.append("try");
str.append("this");
我的问题是,为了追加方法,我们再次传递了一个字符串。在上述情况下,是否不会为字符串池中的“try”和“this”创建新的字符串对象。
【问题讨论】:
标签: string stringbuffer