public class StringTest4 { public static void main(String[] args){
String s1 = "hello";
String s2 = "world";
String s3 = "helloworld";
String s4 = "hello"+"world";
String s5 = s1 + s2;
System.out.println( s3 == s4); //返回true;
System.out.println( s3 equals (s4) ); //返回true;
System.out.println( s3 == s5); //返回false;
System.out.println( s3 equals (s5) ); //返回true;
}
}
这题我没怎么弄明白
我的问题是 == 和 equals 有什么不同,打印体3为什么会返回false,内容一样啊,难道因为中间的+号连接符?
我比较模糊的记忆是 == 是比较内存地址,equals是比较内容,不知道是否记错,主要还是想知道s3==s5为什么返回false
|