作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须为 HashMap 中的每个键值维护索引列表。所以我将 HashMap 声明为
HashMap<Integer,HashSet<Integer> hset = new HashSet<Integer>()> hm = new HashMap<Integer,HashSet<Integer> hset = new HashSet<Integer>()>();
但上述声明似乎不正确。所以我把它声明为
HashSet<Integer> hset = new HashSet<Integer>();
但这里的问题是,我如何声明存储在 HashSet 中的对象类型,即 Integer,因为在上面的声明中 HashSet 是原始类型。
最佳答案
我想在这里补充更多,您需要像下面这样初始化您的外部 map
HashMap<Integer,HashSet<Integer>> map = new HashMap<Integer,HashSet<Integer>>();
和这样的内部集合
HashSet<Integer> hset = new HashSet<Integer>();
然后您在映射和哈希集中插入如下值。
hset.add(1);
hset.add(2);
map.put(100,hset);
hset = new HashSet<Integer>();
hset.add(3);
hset.add(4);
map.put(101,hset);
因此每次您需要将新的 HashSet 实例放入 map 时。
您可以使用您用于插入的 Map 键来获取内部 HashSet。
HashSet<Integer> hset=map.get(100); //Same map
关于java - 如何将 HashSet 作为 HashMap 的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32195544/
我是一名优秀的程序员,十分优秀!