-1
我正在使用名爲Key
的類。 它有2個欄位:在Java中用於聯合類似類型的哈希碼
- 地址(類型MyAddress),其具有GUID(型長)
- ID(型長)
這個類可以具有在任何給定點的一個以下:
- 地址不爲空和id == - 1個
- adresss爲空和id> 0
會不會是正確的做到以下幾點:
int hashcode(){
if (address==null) return Long.hashCode(id)
else return Long.hashcode(address.guid)
}
是否有可能從發生的任何問題? 我主要想確保在任何給定時間只有一個字段是相關的時,這是在類聯合類中生成哈希碼的正確方法。
如果類的實例是不可變的,那就很好了。 –
什麼是equals函數? –
我相信等於將地址爲空,所以與id相比,否則與地址的guid比較。 – slashms