2013-10-24 181 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(); 

雖然從你的問題我不知道這是你想要的。也許你應該改寫你的問題,併發布你的代碼到目前爲止,所以我們可以理解你到底需要幫助。