Java 中是否有一种数据结构(java util、guava...)允许我存储也可以解释为值键的“键值”对?
示例:
Datastructure d = new Datastructure();
d.add(1, "foo");
d.add(21 "bar");
d.add(33 "hello");
d.add(55 "world");
像d.get1(1)
这样的函数应该返回foo
。
像 d.get2("foo")
这样的函数应该返回 1
。
像d.get1(33)
这样的函数应该返回hello
。
像 d.get2("hello")
这样的函数应该返回 33
。
...
有这样的东西吗?
最佳答案
在 Apache commons 集合库中是 BidiMap接口(interface)及其一些实现。该接口(interface)有一个获取逆映射的方法,即键和值的角色交换的映射。
如果您不想使用此类,您可以在内部使用两个映射轻松实现您自己的类。
关于java - 是否存在具有 2 个索引/一个键-键数据结构的数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56119314/