본문 바로가기
IT, 개발/JAVA

JAVA - Map 전체 내용 꺼내기 (entrySet, keySet)

by 개발자스터디 2022. 5. 27.
반응형

 

 

 

 

자바 개발을 하다 보면 Map을 사용하여 데이터를 보관하고 관리하는 경우가 매우 많습니다.

 

Map에 중복되지 않는 key값으로 데이터를 넣고 

데이터를 꺼낼 때는 key값을 가지고 value를 찾아옵니다.

 

내가 모든 key값을 알고 있을 때는 문제가 없지만 프로그램을 동적으로 구성하다 보면 

Map에 넣은 데이터가 어떤 것들이 있는지 모르는 경우도 있습니다(혹은 key값이 뭔지 모를 경우도).

 

1. entrySet()
2. ketSet()

 

이럴 경우에 entrySet(), keySet()등 의 함수들을 활용하여 Map 전체를 조회하는 방법에 대해 알아보겠습니다.

 

 

 

1. entrySet()

 

Map에 entrySet() 함수를 사용하여 Map의 전체 key와 value를 꺼냅니다.

반복문은 foreach 반복문을 사용합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
// Map 선언 및 데이터 넣기 (테스트용 Map)
Map<String, Object> testMap = new HashMap<String, Object>();
testMap.put("red""apple");
testMap.put("yellow""banana");
testMap.put("green""melon");
 
System.out.println("testMap : "+ testMap);
 
// entrySet()을 사용하여 Map의 모든 key값과 value값을 꺼낸다.
for (Map.Entry<String, Object> entry : testMap.entrySet())
{
    System.out.println("key : " + entry.getKey() + " / " + "value : " + entry.getValue());
}
cs

 

 

실행 결과 : 

testMap : {red=apple, green=melon, yellow=banana}
key : red / value : apple
key : green / value : melon
key : yellow / value : banana

 

 

2. ketSet()

 

Map에 keySet() 함수를 사용하여 Map의 전체 key를 꺼냅니다.

이것도 동일하게 foreach 반복문을 사용합니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
// Map 선언 및 데이터 넣기 (테스트용 Map)
Map<String, Object> testMap = new HashMap<String, Object>();
testMap.put("red""apple");
testMap.put("yellow""banana");
testMap.put("green""melon");
 
// keySet()을 사용하여 Map에 들어있는 모든 key값을 꺼낸다.
// 전체 key를 가지고 Map에서 value값을 꺼낼 수 있다. 
for (String mapKey : testMap.keySet()) 
{
    System.out.println("key : " + mapKey + " / " + "value : " + testMap.get(mapKey));
}
cs

 


실행 결과 :

testMap : {red=apple, green=melon, yellow=banana}
key : red / value : apple
key : green / value : melon
key : yellow / value : banana

 

테스트해보시고 다양하게 활용하시길 바랍니다.

 

 

 

 

 

728x90
반응형