我有一个关于番石榴多图的问题。该文档在某种程度上模棱两可。对于 multimaps 中的 put-Method,eclise 给我这个解释:
将指定值与此映射中的指定键关联(可选操作)。如果映射先前包含键的映射,则旧值将替换为指定值。
在多重映射中存储一个键值对。一些 multimap 实现允许重复的键值对,在这种情况下 put 总是添加一个新的键值对并将 multimap 的大小增加 1。其他实现禁止重复,并且存储已经在 multimap 中的键值对没有效果.
eclipse 中的解释是有道理的,并解释了为什么我的值被覆盖,但文档说它可以为一个键存储多个值。
我给你看一段我的代码:
public class Updatemanager {
static Map<String,Multimap<String,Values>> updateMap = new HashMap<String, Multimap<String, Values>>();
public static void collectUpdates(String name, String categorie, Values v)
{
Multimap<String, Values> mm = HashMultimap.create();
mm.put(categorie, v);
updateMap.put(name, mm);
}
我想要的输出如下所示:
{name={categorie1=[Values], categorie2 = [Values]}
现在它总是覆盖一个特定键的 updateMap 的内容。我怎样才能做到,现在有覆盖并添加到地图中?
提前非常感谢。