공부방/JAVA

Map의 EntrySet()에 대한 자세한 설명(맵을 탐색하는 4가지 방법)

EVO. 2023. 12. 10. 16:14

Map 인터페이스 내부 코드

 

Map에 저장되는 요소는 모두 Key-Value 쌍이므로 각 Key-Value 쌍마다 매핑 관계가 있어야 한다. 

Map은 매핑된 항목을 나타내기 위해 Entry 내부 클래스를 사용한다. 이 Entry 내부 클래스를 통해 키와 값을 얻어낼 수 있다.

 

Map.Entry를 통해 getKey() 및 getValue() 사용 예제

 

entrySet() 이란

entrySet은 Map의 Key-Value 쌍의 모음이다. HashMap에 저장된 키-값의 데이터를 결합된 형태로 Set에 저장하여 반환해준다. 

Set 인터페이스의 타입은 Map.Entry이다. 다음 예제와 같이 map을 순회할 수 있다. 

 

 

keySet() 이란

keySet은 Key의 모음이다. Set으로 반환되며 Set의 타입은 Key의 타입이다.

 

당연하게도 valueSet은 존재하지 않는다. Map에서는 키가 중복되는 것을 허용하지는 않지만 Value는 중복되도 상관 없기 때문에 이것을 Set으로 묶을 수가 없다. 

 

하지만 values()메서드를 통해 Collection으로 Value들만 묶는 방법이 있다.

 

Map을 순회하는 4가지 방법

1. keySet()으로 순회

 

2. iterator과 entrySet()을 이용한 순회

 

3. 향상된 for문을 이용한 순회

 

4. values()를 이용한 순회