为了账号安全,请及时绑定邮箱和手机立即绑定

containsValue(new Student(null,name)中为什么Student的ID对应值是空(null)呢

请各位大神赐教 当Student对象的ID设置为null时 与Map中的原值相比较时不就不相等了吗?

正在回答

3 回答

因为传入的参数只有name属性,只能判断Student的Map中是否包含学生Student为name的Student,在判断的时候也只用了name值,这个从equals方法中就可以看到是比较的  .name 是否相等

0 回复 有任何疑惑可以回复我~

老师后面自动生成equals方法和hashcode方法中只点击了name这个属性。

0 回复 有任何疑惑可以回复我~

我也在想这个问题。

自己猜的是因为你根本就无法确定是否有对应的学生存在,也就不可能去判断这个学生的ID。因此将ID设置为null。而且在后面重写Student类的equals()和hashCode()时,仅仅对name一项做了判断而没有判断id。

4 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

containsValue(new Student(null,name)中为什么Student的ID对应值是空(null)呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信