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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 冯心程 于 2012-7-25 19:46 编辑

大家都乘以一个数的话那也不影响大小啊什么的啊   那后面还乘以一个数干嘛 能对比较产生什么影响。。。没想明白

2 个回复

倒序浏览
因为重写hashCode() 方法时,你可能要限定比较的方式是按照一定的顺序要求的。
例如: 你比较的是一个Person类,有(String)name,(int)age属性
      public int hashCode(){
              return this.name.hashCode() + age * 88;
      }
   通常有可能在程序中new了两个Person:p1,p2;
     其中p1的name与p2的name不同,age也不同,
     但是,有可能name的hashCode + age就等了,这样就造成p1与p2等了,为了避免这个问题给他随便乘以一个数,让他们的hashCode不可能相等。
希望对你有帮助.....

评分

参与人数 1技术分 +1 收起 理由
田向向 + 1 很给力!

查看全部评分

回复 使用道具 举报
懂了 谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马