本帖最后由 郭运川 于 2014-2-10 09:04 编辑
hashCode();里面的哈希值是否是唯一的?在下面的hashCode()中返回的return name.hashCode() + age*37;的值是多少,在哈希表中是如何计算的?
class Person
{
private String name;
private int age;
Person(String name,int age)
{
this.name = name;
this.age = age;
}
public int hashCode()
{
System.out.println(this.name + "......hashcode");
//return name.hashCode() + age;
return name.hashCode() + age*37;//为保证hashcode返回值得唯一性age可以乘以一个数
}
} |
|