- 实例说明
Java中的对象是保存在堆中的,为了提高查找的速度而使用了散列查找。散列查找的基本思想是定义一个键来映射对象所在的内存中地址。
- 关键技术
重写hashCode()方法。Object类在实现该方法时,返回值是对像的存储地址。这与equals()方法的实现相关。因此当重写了equals()方法后,一定要重写hashCode()方法。
eg:
public int hashCode(){ return 7*name.hashCode() + 11*new Integer(age).hashCode + ...; }
重写equals()方法时,使用到的属性也要在hashCode()方法中使用。计算新的哈希码有很多不同的算法。