Java映射数据结构

Cod*_*lus 4 java mapping map data-structures

可能重复:
Java Hashmap:如何从值获取密钥?

我正在寻找一个Java数据结构(某种地图),我可以在其中对Keys和Values执行查找.例如,假设我在一组字符串和整数之间有一对一的映射.调用此对象映射器.我希望能够执行以下操作:

  1. mapper.getAssociated(value):这将返回密钥
  2. mapper.getAssociated(key):这将返回值

kos*_*osa 5

我认为你正在寻找谷歌番石榴BiMap(或)公共BidiMap.

例:

BidiMap bidiMap = new DualHashBidiMap( );
bidiMap.put( "il", "Illinois" );
bidiMap.put( "az", "Arizona" );
bidiMap.put( "va", "Virginia" );
// Retrieve the key with a value via the inverse map
String vaAbbreviation = bidiMap.inverseBidiMap( ).get( "Virginia" );

// Retrieve the value from the key
String illinoisName = bidiMap.get( "il" );
Run Code Online (Sandbox Code Playgroud)

有关BiMap示例,请参阅此文章.