给出如下地图:
Map<String, Integer> = new Hashmap<String, Integer>;
如何获得entrySet的Collection<Integer>
(Collection的任何实现)?执行.entrySet()
似乎不起作用。
答案 0 :(得分:13)
如果您只想获取地图值,可以使用values()
方法。 Javadoc页面是here。
这是因为您的需求是整数集合,而地图值是整数类型。
entrySet
返回Map.Entry
的集合,其中每个实例都包含组成条目的键和值,因此如果您同时需要键和值,请使用entrySet()
像这样
Set<Map.Entry<String, Integer>> entries = map.entrySet()
答案 1 :(得分:6)
这取决于你是否真的想要一个SET。如果你想要一个真正的Set,你必须这样做:
Set mySet = new HashSet(map.values());
请注意,值会给出一个可能包含重复条目的Collection。