我想创建一个HashMap
其中每个 Key
可以有多个Value
s。例如,key
雨伞可以有value
红色、黑色和绿色。我听说 Hashtable
中的水桶可能是LinkedList
s,ArrayList
我如何将存储桶实现为 ArrayList
这样我就能够添加与 key
匹配的项目到列表末尾?
我想要类似 Map<Key, Value>
的东西。如果Key
存在,Value
将被添加到当前Value
的列表中s。
最佳答案
您应该使用Map<K, List<V>> map = new HashMap<>();
而不是 map.put(k, v)
,你会做这样的事情:
List<V> vs = map.get(k);
if (vs == null) {
vs = new ArrayList<>();
vs.add(v);
map.put(k, vs);
} else {
vs.add(v);
}
关于Java 哈希表存储桶作为 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26983864/