首页 > 其他 > 详细

hashcode()与equals()方法(第8周)

时间:2018-06-30 12:02:59      阅读:165      评论:0      收藏:0      [点我收藏+]

一:equals()的作用

  equals() 的作用是用来判断两个对象是否相等。equals() 定义在JDK的Object.java中,通过判断两个对象的地址是否相等(即,是否是同一个对象)来区分它们是否相等。

二:equals() 与 == 的区别是什么?

  == : 它的作用是判断两个对象的地址是不是相等即,判断两个对象是不是同一个对象。

  equals() : 它的作用也是判断两个对象是否相等但它一般有两种使用情况:
                 情况1,类没有覆盖equals()方法。则通过equals()比较该类的两个对象时,等价于通过“==”比较这两个对象。
                 情况2,类覆盖了equals()方法。一般,我们都覆盖equals()方法来两个对象的内容相等;若它们的内容相等,则返回true(即,认为这两个对象相等)。

: hashCode() 的作用

hashCode() 的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置。

四: hashCode() 和 equals() 的关系

  • 在程序执行期间,只要equals方法的比较操作用到的信息没有被修改,那么对这同一个对象调用多次,hashCode方法必须始终如一地返回同一个整数。
  • 如果两个对象根据equals方法比较是相等的,那么调用两个对象的hashCode方法必须返回相同的整数结果。
  • 如果两个对象根据equals方法比较是不等的,则hashCode方法不一定得返回不同的整数。

部分内容摘自:https://www.cnblogs.com/skywang12345/p/3324958.html

hashcode()与equals()方法(第8周)

原文:https://www.cnblogs.com/MapleDream/p/9246424.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!