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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

为什么?说说原因

2 个回复

倒序浏览
不可以,因为按照哈希码值常规协定,当两个对象的equals方法反回true的时候,要求哈希码值也必须相同
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
hashcode()方法的起源于object,具体计算只有对象的地址,如果特定对象不重写该方法,对象值相同(即地址相同)时hashcode()得到的值一定相同,如果重写了该方法(通常特定类会重写该方法),hashcode()的计算内容会由对象地址改为计算和对象成员变量相关(比如改写后hasdcode()方法返回的哈西值为变量1*变量二+2,此处仅做举例说明,只是为了让你明白重写后的函数返回值和特定类关系密切)

你的问题中的对象值相同我的理解是地址相同,如果hashcode没有被重写,则哈西值一定相同,如果被重写,则由于引用变量地址值相同,一定指向了同一个对象,同一个对象中的变量相同,所以由此计算出的哈西值也应该是相等的
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马