我正在尋找一個可包含一個值的兩個或更多個鍵的Java Map類。它幾乎和Apache公共集合中的MultiKeyMap類似,但它只能使用其中一個鍵來檢索值而不是使用所有鍵。對於一個值可以包含兩個或更多個鍵的Java Map類
例如創建的地圖值與鍵「key1的」和「KEY2」的條目的「Hello World」:
map.put("Hello World", "key1", "key2");
然後,如果我想要得到的價值,我可以使用兩種可能方法:
String value = map.get("key1");
或
String value = map.get("key2");
在MultiKeyMap,你需要指定所有的鍵以檢索值:
String value = map.get("key1", "key2");
UPDATE:
有人告訴我使用一般的地圖類,但我不知道,如果具有兩個指向相同值的鍵的映射將生成兩個重複值或不在內存中。所以誰都可以證實這一點?
目前還不清楚爲什麼使用標準的'Map'不起作用。 'Map'可以包含來自不同鍵的映射到相同的值。您想要刪除所有其他相關密鑰的問題是否存在? –
那麼如果你沒有指定兩個鍵,可以返回幾個值,map.get(「key1」)應該返回一個字符串集合 –
@Maurice:OP在哪裏說他想要將一個鍵映射到多個值?我不確定你是否按照我(或OP)的方式閱讀這個問題。 –