我正在尝试实现一个看起来像
的复杂数据结构Map<A,Set<B>> map = new HashMap<A,Set<B>>();
但我不确定如何向此数据结构添加内容。我正在尝试做一个
map.put(a,b);
但这并没有帮助,因为它需要一套。我需要实现此数据结构的要求。有什么想法吗?
答案 0 :(得分:1)
您需要在哈希映射中包含的集合中add
您的元素:
if (!map.containsKey(a)) {
map.put(a, new Set<B>());
}
map.get(a).add(b);
答案 1 :(得分:1)
如果您能够为项目添加依赖项,那么Guava就支持此项。您需要使用SetMultimap。
答案 2 :(得分:0)
首先需要获取该设置然后添加到它:
map.get(a).put(b);
您可能还需要处理该集不存在的特殊情况。
Set<B> set = map.get(a);
if (set == null)
{
set = new HashSet<B>();
map.put(a, set);
}
set.put(b);