String是不可修改的对象。改String内容后都是返回新的对象。
(1)3个
String str1="aaa";
String str2="aaa"+"bbb";
按照上面的做法,总共在内存里产生了多少个String对象?
答:共3个,
String str1="aaa"; 产生一个
String str2="aaa"+"bbb"; “abc"根据享元模式就不生成了,"bbb"算一个, "aaa"+"bbb" 运算后返回
"aaabbb"再算一个。所以共三个.
(2)3个
String str="aaa"+"bbb";
按照上面的做法,总共在内存里产生了多少个String对象?
答:共3个,
String str2="aaa"+"bbb"; “abc" 算一个 ,"bbb"算一个, "aaa"+"bbb" 运算后返回
"aaabbb"再算一个。所以共三个. |