05 2013 档案
摘要:equals()反映的是对象或变量具体的值,即两个对象里面包含的值--可能是对象的引用,也可能是值类型的值。而hashCode()是对象或变量通过哈希算法计算出的哈希值。之所以有hashCode方法,是因为在批量的对象比较中,hashCode要比equals来得快,很多集合都用到了hashCode,比如HashTable。两个obj,如果equals()返回值为true,hashCode()返回值一定相等。两个obj,如果hashCode()返回值相等,equals()返回值不一定为true(Hash散列值有冲突的情况,虽然概率很低)。所以:可以考虑在集合中,判断两个对象是否相等的规则是:第一
阅读全文
浙公网安备 33010602011771号