實作具有多個鍵的映射
程式設計中的一個常見需求是一個類似於映射的資料結構,但能夠使用多個(不同類型的)鍵存取值。雖然典型的映射將單一類型的鍵與相應的值相關聯,但此要求需要更靈活的方法。
解:兩個映射而不是一個
由於根據映射的性質,使用複合鍵(例如元組或對)來表示Java 中的多個鍵是不夠的。這是因為映射依賴於雜湊碼和相等性檢查來進行鍵查找。因此,僅使用複合鍵的其中一個組件來搜尋值變得不可能。
相反,建議的解決方案是在內部維護兩個單獨的映射:一個 Map
使用包裝類別實作
如果需要單一接口,可以建立包裝類別來公開透過任一鍵存取值的方法。這個包裝類別會將實際的查找委託給兩個底層映射,為使用者提供統一的介面。
結論
透過在內部使用兩個映射並可能實現一個包裝類,可以實現行為類似於具有多個鍵的映射的資料結構。這種方法確保使用任一鍵類型有效檢索值,同時保持鍵的唯一性。
以上是如何在 Java 中實作具有多個鍵的映射?的詳細內容。更多資訊請關注PHP中文網其他相關文章!