2013-10-24 3 views
0

HashMap을 Set으로 변환하고 싶습니다. 두 맵간에 공통 요소를 찾으려면 먼저 해당 맵을 세트로 놓고 retainAll.How를 사용하여 맵을 Set으로 변환하십시오.Java Collections Sets to Set

+1

키 또는 값을 원하십니까? 두 가지 컬렉션 유형은 근본적으로 다릅니다 ... –

+0

무엇을 넣으려고합니까? 열쇠? 가치? 또는 키 값 쌍? 지도 API를 통해 모두 3 개를 액세스 할 수 있습니다 –

+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을 사용하여 액세스합니다

1

의 HashMap가 키 세트 값 세트 연관성을 유지할 수 있고, HashMap에 내가 코멘트에서 볼 것처럼 당신이 그것을 here

0

에 대한 자세한 정보를 찾을 수 있습니다

entrySet() 

라는 방법이있다 키 - 값 쌍이 필요합니다. 이것은 당신이 쉽게지도에서 얻을 수 있습니다. 예를 들면 다음과 같습니다.

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

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

그러나이 질문에 대한 답은 사용자가 원하는 것이 전부는 아닙니다. 어쩌면 질문을 다시하고 코드를 게시하여 지금까지 한 일을 수행하여 정확히 어디에서 도움이 필요한지 이해할 수 있습니다.