新接口被添加到支持雙向映射。 使用雙向映射,可以使用值查找鍵,并且可以使用鍵輕松查找值。
以下是org.apache.commons.collections4.BidiMap <K,V>
接口的聲明 -
public interface BidiMap<K,V>
extends IterableMap<K,V>
以下是接口的方法列表 -
編號(hào) | 方法 | 描述 |
---|---|---|
1 | K getKey(Object value) |
獲取當(dāng)前映射到指定值的鍵。 |
2 | BidiMap<V,K> inverseBidiMap() |
獲取該映射的鍵和值的鍵視圖。 |
3 | V put(K key, V value) |
將鍵值對(duì)放入映射中,替換之前的任何一對(duì)。 |
4 | K removeValue(Object value) |
刪除當(dāng)前映射到指定值的鍵值對(duì)(可選操作)。 |
5 | Set<V> values() |
返回此映射中包含的值的Set 視圖。 |
該接口繼承了以下接口的方法 -
org.apache.commons.collections4.Get
org.apache.commons.collections4.IterableGet
org.apache.commons.collections4.Put
java.util.Map
BidiMap接口實(shí)例
import org.apache.commons.collections4.BidiMap;
import org.apache.commons.collections4.bidimap.TreeBidiMap;
public class BidiMapTester {
public static void main(String[] args) {
BidiMap<String, String> bidi = new TreeBidiMap<>();
bidi.put("One", "1");
bidi.put("Two", "2");
bidi.put("Three", "3");
System.out.println(bidi.get("One"));
System.out.println(bidi.getKey("1"));
System.out.println("Original Map: " + bidi);
bidi.removeValue("1");
System.out.println("Modified Map: " + bidi);
BidiMap<String, String> inversedMap = bidi.inverseBidiMap();
System.out.println("Inversed Map: " + inversedMap);
}
}
執(zhí)行上面示例代碼,得到以下結(jié)果 -
1
One
Original Map: {One=1, Three=3, Two=2}
Modified Map: {Three=3, Two=2}
Inversed Map: {2=Two, 3=Three}