2011-09-19 49 views
2

设置项?做.entrySet()似乎并不奏效。得到拿到一张地图,如地图

+0

-1,这个问题没有显示任何研究成果:即使通过Map的Javadoc快速浏览也会回答这个问题。 –

回答

12

如果您只想获得地图值,可以使用values()方法。 Javadoc页面是here

这是因为您的要求是一个整数集合,并且映射值是整数类型。

entrySet返回Map.Entry的集合,每个实例都包含两个键和值组成的条目,所以如果你想同时得到键和值,使用entrySet()像这样

Set<Map.Entry<String, Integer>> entries = map.entrySet()

+0

'Set'实际上_doesn't_没有任何不在'Collection'的方法,有趣的是。它只是有不同的语义。 – ColinD

+0

@colind,thanx,不知道我的电线是如何穿过那里的。 – hvgotcodes

+0

@ColinD,ooo和我的entrySet例子是完全错误的,修复.. – hvgotcodes

6

这取决于你是否真的想要一个SET。如果你想有一个真正集,你必须做到:

Set mySet = new HashSet(map.values()); 

注意给出了一个集合,可以有重复的条目。