主要用于HASH表方式快速定位对象..
JAVA大量使用细粒度对象,这样快速索引定位对象显得特别重要.

解决方案 »

  1.   

    hashcode()的返回值标志俩个对象是否相等有个简单的例子
    当我们Hashtable ht = new Hashtable();
    ht.put(new Integer(1), "1");取值时ht.get(new Integer(1));这里的两个new Integer(1)就是通过hashcode()来判断相等的。
      

  2.   

    一般用得少,
    对于你自己新建的类,如果要加入到hashtable里时才考虑重载hashcode
    如:ClassA是你自己的类,
    Hashtable ht = new Hashtable();
    ht.put(new ClassA(1), "1");
    ht.put(new ClassA(1), "1");
    你会发现放了两个ClassA(1)在里面,这是因为你没有重载hashcode,如果你重载了的话,让ClassA在构造参数相同的时候,所得的hashcode一样就行了