我需要一种可以在两个方向访问的映射,因此使用键键结构而不是键值。这在Java中存在吗?如果没有,创建它的最佳方法是什么?
所以例子:
mySpecialHashMap.put("key1", "key2");
mySpecialMap.getL2R("key1") returns "key2";
mySpecialMap.getR2L("key2") returns "key1";
我需要一种可以在两个方向访问的映射,因此使用键键结构而不是键值。这在Java中存在吗?如果没有,创建它的最佳方法是什么?
所以例子:
mySpecialHashMap.put("key1", "key2");
mySpecialMap.getL2R("key1") returns "key2";
mySpecialMap.getR2L("key2") returns "key1";
所以你想要一个双向地图。为此,您可以使用Apache Commons Collections BidiMap或Google Collections BiMap。
是的,有来自 Google Collections的BiMap 。
或者对于可逆枚举,请参阅这个 Stackoverflow 问题。