重写equals时,一定要重写hashcode?
时间: 2024-02-02 18:53:03 浏览: 70
为什么在重写 equals方法的同时必须重写 hashcode方法
是的,重写equals方法时,一定要同时重写hashcode方法。这是因为在Java中,如果两个对象相等,则它们必须具有相同的hashcode值,否则它们将无法正确地存储在散列表中。如果equals方法被重写而hashcode方法没有被重写,那么在使用散列表等需要使用hashcode方法的数据结构时,会出现意外的结果。因此,为了保证程序的正确性,重写equals方法时,必须同时重写hashcode方法。
阅读全文