hashcode的重写没有思路!

hashcode的重写没有思路!

重复的内容依然能输出出来

@Override
public int hashCode() {
   return super.hashCode();
}

@Override
public boolean equals(Object obj) {
   if(this==obj){
       return true;
   }

   if(obj.getClass()==Students.class){
       Students students=(Students)obj;
       return students.getName().equals(name)&&students.getStuld()==stuld;
   }
   return false;
}

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

hashCode()的重写,你可以返回它自己的一个ID,那学生的ID不同,就肯定是不同的。

  • Long33 提问者 #1
    非常感谢!
    2017-05-16 18:53:32
  • public int hashCode() { return this.getStuld(); } 之后在测试类中调用hashCode()方法去做判断么?
    2017-05-19 00:15:57
喜欢做梦的鱼 2017-05-19 10:46:47

当数据存入HashSet时,会自动调用hashCode方法验证数据是否重复。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码