双向地图
2022-08-31 14:31:54
你能建议一种映射或类似的数据结构,我们可以同样轻松地从彼此获得值和键。也就是说,每个人都可以用来寻找其他的。
如果您觉得导入一些第三方库很痛苦。这个简单的类怎么样。
public class BiMap<K,V> {
HashMap<K,V> map = new HashMap<K, V>();
HashMap<V,K> inversedMap = new HashMap<V, K>();
void put(K k, V v) {
map.put(k, v);
inversedMap.put(v, k);
}
V get(K k) {
return map.get(k);
}
K getKey(V v) {
return inversedMap.get(v);
}
}
确保 K 和 V 类具有正确的哈希码实现。