我有以下Java代码:
public String makinStrings() {
String s = "Fred";
s = s + "47";
s = s.substring(2, 5);
s = s.toUpperCase();
return s.toString();
}
Run Code Online (Sandbox Code Playgroud)
问题有点简单:String调用此方法时将创建多少个对象?
一开始我回答说创建了5个String对象,但是我的书中的答案说只创建了3个对象而没有给出解释(这是一个SCJP问题).
从我的观点来看,有5个对象:"Fred","47","Fred47","ed4","ED4".
我也在SCJP模拟考试中找到了这个问题,答案相同3.
将变量与变量进行null比较或null与变量进行比较是否有任何区别?
例如,哪个比较更好(a != null)或(null != a)?我在某处读到第二个更快但没有找到原因.