这里System.out.println("str1等于str2:" + (str1 == str2));
的比较是不是比较的内容其实是地址的比较呢?而不是String类字符串内容的比较.
String s1 = new String("str");
String s2 = new String("str");
System.out.println(s1.equals(s2));//true,毕竟字符串内容
System.out.println(s1==s2);//false,毕竟字符串的内存地址
如图所示,str1和str2地址不同,存的内容相同,System.out.println("str1等于str2:" + (str1==str2));的结果为true