67,513
社区成员
发帖
与我相关
我的任务
分享
String strA = new String("abc");
String strB = new String("abc");
System.out.println("***************");
System.out.println(strA.hashCode());
System.out.println(strB.hashCode());
String strA = new String("abc");
String strB = new String("abc");
System.out.println("***************");
System.out.println(strA.hashCode());
System.out.println(strB.hashCode());
// strA 与 strB的hashCode相同 说明jvm在堆上只有一个对象,可是strA != strB,说明内存地址又不一样.实际内存中有两个对象
System.out.println("strA 是否与 strB指向同一内存? " + strA == strB);
String strC = "abc";
String strD = "abc"; // 这时strD是strC的一个引用而已
System.out.println("^^^^^^^^^^^");
System.out.println(strC.hashCode());
System.out.println(strD.hashCode());
System.out.println("strC 是否与 strD指向同一内存? " +strC == strD);