次の 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 つのコレクションはすべて同じキーを共有しますが、値は異なります。
私が持っている質問は次のとおりです。merchant 2
FOO
これら 2 つのコレクションが実際には同じキーを共有していないと誰かが指摘する前に、BiMap は一意の値を強制するため"BAR","accessId 1"
、コレクションにリストできないことを覚えておいてください。
BiMap が適切なコレクションであるとは確信していませんが、そのinverse()
メソッドを利用しています。より適切なコレクション (または私が見落としている他の方法) がある場合は、お知らせください。
参考までに: BiMap コレクションには Guava-14.0-rc1 を使用しています。