除了允許使用散列表之外,還有其他什麼原因可以爲我的類型實現散列碼功能嗎?什麼時候應該爲我的類型定義一個哈希碼函數?
假設我正在設計一些我打算在內部使用的類型。我知道類型是系統的「內部」,我也知道我絕不會在散列表中使用這些類型。儘管如此,我決定我將不得不重新定義equals()方法。理論上說我也應該重新定義哈希碼的方法,但我看不出任何理由,在這種情況下,我應該這樣做。
任何人都可以指出我的其他原因嗎?
這個問題可以改爲:在哪些情況下我們應該在我們的類型中實現一個哈希碼方法。
PS:我不是問如何實現一個。我在詢問時。
+1意外的「樂趣」。尼斯轉身,馬克! – spender 2010-06-13 22:05:48