A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© liang926 中级黑马   /  2014-8-11 10:30  /  1485 人查看  /  5 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 liang926 于 2014-8-14 00:36 编辑

hashCode和equals方法都是是用来鉴定2个对象是否相等的。但是他们是有区别是什么呢?谢谢各位大神的指导!

点评

http://bbs.itheima.com/forum.php?mod=viewthread&tid=129906&page=1#pid856308  发表于 2014-8-11 10:41

5 个回复

倒序浏览
hashCode比较的是hashCode值,通过一种hash算法实现,方法不唯一。equals()方法在Object最初的定义是比较地址,因为是方法可以重写,用以实现自己想实现的“相等”逻辑,在hashset集合中equals比较的是元素的内容,
回复 使用道具 举报
谢谢,讲的很详细!学习了!
回复 使用道具 举报
hashCode是返回对象的哈希值,equals方法是比较两个对象的哈希值是否相同,但是一般子类方法都改写了equals方法,可能就是比较内容,或者其他的了
回复 使用道具 举报
﹑淼 来自手机 中级黑马 2014-8-11 12:30:25
报纸
这两个方法通常被重写,原始的在Object类中,hashCode返回的是对象的哈希值,是int型,equals返回的是boolean型,比较的是对象的地址。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马