求解! 首先不明白的就是Object中hashCode方法的作用是什么? 书上介绍说这个散列码是对象的存储地址, 而且对象不同其所调用hashCode方法所得到的值应该是不同的。 我做了一个实验。自己创建了对象数组,让对象分别调用getName和hashCode方法,可是先后得到的结果却是不一样的。如下:Carl Cracker 28737396Harry Hacker 6927154Tony Tester 24355087-----------------------------Carl Cracker 6927154Harry Hacker 24355087Tony Tester 5442986还有就是在百&度&知&道上看到一个问题,我没搞明白。大虾就烦劳您给解释一下吧。多谢多谢!如下:String a = new String("i love you");String b = new String("i love you");我知道上面a与b的哈希值是一样。能不能由此判断a与b都是引用同一字符串对象。--------------------------------------------若b中的字符串值变为 b = "i hate you",同时a的字符串值保持为原值,即i love you。发现这时的a与b的哈希值是不一样。这时也能不能判断它们引用了两个不同的字符串对象。----------------------------------------------当 b = "i love you"且a不变时,发现 a与b的哈希值又一样了。能不能说b又引用了与a一样的对象。 总言之,能不能依靠String类中已覆盖过的hashCode()方法来判断字符串类型的引用变量(即如a或b那样的变量)是否指向同一个对象。这个被覆盖过的hashcode()方法所产生的哈希值能不能作为对象的一个唯一的标识号。 想再问一下:在String类中被覆盖过的hashCode()和Object类中的hashCode()方法有什么区别?作用是不是与Object类中的原方法一样呢?