2011-10-20 46 views

回答

1

按照documentation

多達是合理可行,通過 類對象定義的hashCode方法並針對不同的對象返回不同的整數。 (此 通常通過轉換所述 對象的內部地址轉換成一個整數來實現的,但是這種實現技術不是由Java編程語言不需要 。),其相應地,確切的配方沒有定義

注通過Java可以根據JVM實現和JVM版本而變化。

1

沒有官方的hashCode函數。一個實現允許創建任何hashCode對該實現有意義。哎呀,如果有意義的話,這個函數對於不同的類型可能會有所不同。如果您正在使用Eclipse,請從菜單中轉到「源代碼 - >生成hashCode()和equals()」,並探索如何配置hashCode函數。基本上你可以決定你要使用什麼聲明的成員,如果有的話,爲這個類建立一個hashCode。然後它將一些素數與一些素數一起打上補丁。這是一個有趣的方法。

+0

謝謝。我有興趣知道對象散列碼的「默認」值。 – ziggy