確定集合中hashCode() 方法的最佳實現是一項細緻入微的任務,很大程度受到以下因素的影響具體的使用模式。然而,Josh Bloch 在他的開創性著作《Effective Java》(第 8 項,第二版)中概述了一種廣泛認可且有效的方法。
根據Bloch 的建議建議,應遵循以下步驟來創建有效的hashCode()方法:
根據每個字段f計算其雜湊碼c類型:
將計算出的雜湊值c與結果結合:
該方法確保雜湊值的正確分配透過有效地組合 equals() 方法中測試的所有欄位的雜湊碼來取得大多數用例的值。組合步驟中乘以 37 進一步增強了分佈。
雖然可能沒有普遍的「最佳」實現,但 Bloch 推薦的方法為創建有效的 hashCode 提供了堅實的基礎( ) 集合方法。透過仔細考慮使用模式並應用概述的步驟,開發人員可以確保他們的集合在基於雜湊的操作(例如 contains() 和 get())方面具有最佳性能。
以上是如何為集合實現健全的 hashCode() 方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!