我往前台传送 collection,是 25 个元素,看了前台发现后发现只有 24 个元素。然后,我 debug 后台,发现 collection 有离奇的问题,第二个元素 ACCESS,点击 users 没有,所以是 24 个,点 elements 有,就是 25 个。我看了看 ACCESS,发现它的 hash 是零,会不会和它的 hash 有关系,请大侠们帮我看看怎么回事?见图,你就明白了
2 回答
LEATH
TA贡献1936条经验 获得超6个赞
嗯,hashcode区分大小写
ACCESS hashcode:1924835684
access hashcode:-1423461020
public void printHashCodeWrapper() { printHashCode("ACCESS"); printHashCode("access"); } public void printHashCode(String p_msg) { System.out.println(p_msg + "\thashcode:" + p_msg.hashCode()); }
修改equals()方法时,也需要修改hashcode()方法。hashcode()方法会用在hashSet,hashMap集合中。hashcode()是用数字代表一个类。
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
大写的ACCESS和小写的access都是有hash值的,就是在userCollection类处理后,大写的ACCESS的hash值为零了,看来是第三方插件处理的问题。
- 2 回答
- 0 关注
- 224 浏览
添加回答
举报
0/150
提交
取消