字符串的比较
String s1,s2;
s1="how are you";
s2="how are you";
String tom1=new String ("we are students");
String tom2=new String ("we are students");
请问大家:
s1==s2的值是false还是true?为什么?
tom1==tom2的值是false还是true?为什么?
如果我没记错的话:
s1==s2是返回true;
tom1==tom2是返回false;
因为s1,s2只是赋给了各个变量值,“==”就是比较值的大小,所以应该返回true;
因为tom1,tom2是你创建的两个不同名的对像,对像用"=="比较是去比较他们两个对像的引用地址,创建对像时是在堆内存里的,是存的它们在栈内存的地址,所以用“==”应该是返回的false,如果要使其返回true就要用"tom1.equals(tom2)",这样返回值应该是true;你可以试下,如果不对的话就是我说反了,呵。。。如果小弟有说错的地方请大家批评,我绝不是为了误导大家哟!大家一起加油,一起学习!