我有以下 BiMap 集合:
BiMap<String,String> accessIds = HashBiMap.create();
accessIds.put("FOO","accessId 1"); //This access Id is common to both FOO and BAR
BiMap<String,String> merchants = HashBiMap.create();
merchants.put("FOO", "merchant 1"); //Both FOO and BAR each have unique merchants
merchants.put("BAR", "merchant 2");
这些是我目前拥有的 4 个总收藏中的 2 个。所有 4 个集合共享相同的键,但值不同。
我的问题是:当我有一个 accessIds 键时,如何确保我可以得到?merchant 2
FOO
在有人指出这两个集合实际上并不共享相同的键之前,请记住 BiMap 强制执行唯一值,因此我无法"BAR","accessId 1"
在集合中列出。
我不相信 BiMap 是正确的集合,但我确实使用了它的inverse()
方法。如果有更适合的集合(或我忽略的其他方法),请告诉我。
仅供参考:我将 Guava-14.0-rc1 用于 BiMap 集合。