AobingJava/JavaFamily

对HashMap文章中有一点疑惑

primejava opened this issue · 0 comments

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