hashCode

Posted kikochz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hashCode相关的知识,希望对你有一定的参考价值。

  • hashcode能大大降低对象比较次数,提高查找效率!
  • 如果两个对象相同,那么它们的hashCode值一定要相同
  • 如果两个对象的hashCode相同,它们并不一定相同(这里说的对象相同指的是用eqauls方法比较)。
  • equals()相等的两个对象,hashcode()一定相等;equals()不相等的两个对象,却并不能证明他们的hashcode()不相等。

所以一般先通过判断hash值再通过equals(),判断对象内容是否相同,同时也可以优化内存结构

System.out.println(a1.hashCode()==a2.hashCode()||a1.equals(a2));

以上是关于hashCode的主要内容,如果未能解决你的问题,请参考以下文章

java 17 - 4 HashCode()保证元素唯一性的代码体现以及图解

Java中的HashCode问题

浅析String与hashCode

浅析String与hashCode

浅析String与hashCode

Java学习:identityHashCode和hashCode方法