【发布时间】:2013-12-14 05:56:33
【问题描述】:
字符串连接需要多少内存位置?
String myStringVariable = "Hello";
在以下两个语句中:
String s = "ABC" + "Hello" + "DEF";
和
String s = "ABC";
s = s + "Hello";
s = s + "DEF";
和
String s = "ABC" + myStringVariable + "DEF";
哪个会消耗更多内存?哪种情况下StringBuilder最有用?
【问题讨论】:
-
第一个绝对适合常量折叠。第二个应该也是。
-
更正:第二个例子实际上不会被常量折叠。 (另外:收到答案后您是否必须更改样本?)
标签: java string memory-management stringbuilder