Commons Collections - BidiMap 接口
添加了新接口以支持双向映射。 使用双向映射,可以使用值查找键,并且可以轻松地使用键查找值。
接口声明
以下是 org.apache.commons.collections4.BidiMap<K,V> 接口的声明 −
public interface BidiMap<K,V> extends IterableMap<K,V>
方法
BidiMap 接口的方法如下 −
| 序号 | 方法 & 描述 |
|---|---|
| 1 | K getKey(Object value) 获取当前映射到指定值的键。 |
| 2 | BidiMap<V,K> inverseBidiMap() 获取此映射的视图,其中键和值颠倒了。 |
| 3 | V put(K key, V value) 将键值对放入映射中,替换之前的任何对。 |
| 4 | K removeValue(Object value) 移除当前映射到指定值的键值对(可选操作)。 |
| 5 | Set<V> values() 返回此映射中包含的值的 Set 视图。 |
继承的方法
这个接口继承了以下接口的方法 −
org.apache.commons.collections4.Ge.
org.apache.commons.collections4.IterableGe.
org.apache.commons.collections4.Pu.
java.util.Ma.
BidiMap 接口示例
BidiMapTester.java的一个例子如下 −
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);
}
}
输出
运行代码时,您将看到以下输出 −
1
One
Original Map: {One=1, Three=3, Two=2}
Modified Map: {Three=3, Two=2}
Inversed Map: {2=Two, 3=Three}

