hashcode、equals和==

hashcode、equals和==

  1. hashcode

    注意JDK对于hashcode有约定:如果两个对象用equals判断是相等的,那么他们的hashcode必须是相等的。这是JDK的要求,否则在哈希容器中就会出问题。所以这就是为什么重写hashcode必须同时重写equals

  2. ==如果不重写的话,对于基本类型判断的是值是否相等,对于引用类型判断的是地址是否相等

  3. equals在object中的实现默认就是调用,但是许多对象都只重写了equals而不重写,从而实现用equals判断值是否相等,而用==判断地址是否相等的效果

posted @ 2020-04-12 10:42  别再闹了  阅读(59)  评论(0)    收藏  举报