2013-10-24 147 views
0

我想将HashMap转换为Set.I试图通过首先将它放置到集合并使用retainAll.How将映射转换为集合来查找两个映射之间的公共元素。Java集合映射到集

+1

那么你想要的键或值?这两种集合类型有根本的不同... –

+0

你想把什么放到集合中?按键?值?或键值对?所有3个都可以通过Map api访问 –

+0

嗯,我想要密钥 – Internet

回答

2

如果你想包含密钥一套使用:

Set<KEY_TYPE> set = map.keySet(); 

如果你想包含值一组使用:

Set<VALUE_TYPE> set = new HashSet<VALUE_TYPE>(map.values()); 

,如果你想包含两个元素一套使用:

Set<Map.Entry<KEY_TYPE, VALUE_TYPE>> set = map.entrySet(); 

您使用getKey()和0123访问Entry的元素

1

HashMap具有一键设置,并设置了一个值,以保持相关性,HashMap中有一个名为方法

entrySet() 

你可以找到关于它here

0

更多信息当我从评论看,你需要键值对。这可以很容易地从地图上获得。这里是一个例子:

Map<Integer, String> myMap = new HashMap<Integer, String>(); 
// ... put values into your map 

Set<Entry<Integer, String>> entrySet = myMap.entrySet(); 

虽然从你的问题我不知道这是你想要的。也许你应该改写你的问题,并发布你的代码到目前为止,所以我们可以理解你到底需要帮助。