1
爲什麼總是在重寫equals()時重寫hashcode()? 舉個例子..Java對象中的HashCode和Equals方法
爲什麼總是在重寫equals()時重寫hashcode()? 舉個例子..Java對象中的HashCode和Equals方法
Object類中只有一個equals()
和hashcode()
方法。沒有正常或不正常的方法版本。
如果您使用任何與散列相關的數據結構(如HashMap或HashSet),那麼您需要重寫hashcode()方法。但是,一般來說,只要覆蓋equals(),就可以覆蓋hashcode()。
[輕輕點我](http://www.javaworld.com/article/2074996/hashcode-and-equals-method-in-java-object---a-pragmatic-concept.html)。 – Maroun
它們不可互換,這使您的問題變得毫無意義。這就像問「String'和普通的'List'有什麼區別? –
http://stackoverflow.com/questions/17027777/relationship-between-hashcode-and-equals-method-in-java – ankurtr