日期:2014-05-20  浏览次数:20704 次

问个字符串的问题
String s1="good";
String s2="good";
String s3=new String("good");
String s4=new String("good");

对这4个字符串进行比较,结果:
s1==s2  
s1!=s3  
s3!=s4


....想问下,这2个方法创建的字符串有什么不同啊?谢谢,本人菜鸟。

------解决方案--------------------
s1="good",这种直接在编译状态就已经创建好good字符串对象了。只不过s1和s2都是引用这个对象而已。

new String() 则是在运行态强制创建新的对象,当然不同。

楼主这类问题下次可以Google下的。