Java类对象
散列码:
如果两个对象根据等于(java.lang.Object)方法是不相等的,则不需要对每个对象调用hashCode方法就必须产生不同的整数结果。但是,程序员应该意识到,为不平等的对象生成不同的整数结果可能会提高哈希表的性能。
如果两个对象可以产生不同的整数结果,那么通过散列实现什么一致性?两个不同的对象可以返回相同的哈希值,这似乎很奇怪。
发布于 2017-06-13 00:29:34
如果一个哈希码不能识别一个唯一的对象,它有什么用呢?
哈希代码不允许您标识唯一的对象,但它允许您标识对象所在的唯一组。
然后,您只需考虑该组,以找到您的对象。
例如,一个HashMap可能有500个项目划分在1000个组之间。由于有了哈希代码,它将立即知道这1000个组中的哪一个,而拒绝了999个其他组。
无论这个组有0,1,甚至6个元素,与所有500个元素相比,它仍然是一个很大的节省时间。
https://stackoverflow.com/questions/44510112
复制相似问题