有人能解釋,爲什麼我們必須實現hashCode()和equals()方法,每次我們寫一個新班?爲新類編寫hashCode()和equals()是一個很好的習慣嗎?我們爲什麼要重寫equals()和hashCode()方法,如何哈希碼工作在HashMap和TreeSet的操作
hashcode()如何在hashMap中工作?
- 爲什麼TreeSet類似?
項
"102. Hello one o two"
"12. Hello twelve"
"1. Hello One"
以下列方式
"1. Hello One"
"102. Hello one o two"
"12. Hello twelve"
在此先感謝。
http://en.wikipedia.org/wiki/Hash_table – SLaks
你看過JavaDoc的這些方法嗎? - http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#hashCode() –
和https://stackoverflow.com/questions/18415104/why-is-there -a-need-to-override-hashcode-if-i-override-equals-method-in-java?rq = 1 – keshlam