我有一个像这样的MultiValueMap
{3=[c-2, c-2], 2=[b-1, b-1], 1=[a-1, a-2, a-3]}
在某个时刻,我必须更新特定键的单个值,例如,我必须更新键2
,如下所示
2=[u-1,u-2]
我该怎么做呢?
发布于 2013-08-19 22:04:14
我从来没有用过这个库--但我希望这两个例子能满足你的需要:
multiMap.getCollection(2).clear();
multiMap.putAll(2, Arrays.asList("u-1", "u-2"));
或
Collection c = multiMap.getCollection(2);
c.clear();
Collections.addAll(c, "u-1", "u-2");
发布于 2013-08-19 22:06:01
最安全的方法是调用getCollection()
来检索当前映射,调用remove(key)
来清除该映射,迭代检索到的集合以重新插入您想要保留的值,和/或添加新值。
如果您知道用于映射的集合的类型(因为您已经调用了接受collectionFactory
的构造函数),那么您可以获得该集合并直接更新它。
https://stackoverflow.com/questions/18315598
复制相似问题