在HashMap中维护列表大小

时间:2014-10-16 11:57:12

标签: arraylist hashmap

我们有一个如下的HashMap,

    HashMap<String, ArrayList<Integer>> hm = new HashMap<String, ArrayList<Integer>>();

1)当密钥重复时,必须将值(整数)添加到arraylist中。 2)如果arrayList大小的大小超过阈值大小,比如500,则从hashMap中删除Kay:Value。

除了通常在每次放入地图之前检查arrayList大小的方法之外,还有更好的方法吗?请指教。

1 个答案:

答案 0 :(得分:1)

考虑使用Guava&#39; ListMultimap

ListMultimap<String, Integer> map = ArrayListMultimap.create();

for(...) {
    ...
    map.put(key, value);
    if (map.get(key).size() > 500)
        map.removeAll(key);
}