primejava opened this issue 6 years ago · 0 comments
对于"为啥我们重写equals方法的时候需要重写hashCode方法呢"的问题,文中给出的理由是 如果”帅丙“和”丙帅“两个字符串对象取模后恰好在同一个链表上,结果发现hashCode都一样,我们会不知道要找的是哪个. 这个例子好像有问题,如果不重写,默认的hashcode方法返回值应该不相等吧?也就不存在不知道找哪个的问题. 个人认为重写hashcode的目的是为了让两个本来不相等的对象变得相等