[Java] Map(Key,Value) 추출하기
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
// 해시맵에 키와 값을 입력하고 불러오는 방법들 3가지를 알아보자.
public class ForMap {
public static void main(String[] agrs) {
Map<String, String> map = new HashMap<String, String>();
map.put("키값1", "데이터1");
map.put("키값2", "데이터2");
map.put("키값3", "데이터3");
map.put("키값4", "데이터4");
map.put("키값5", "데이터5");
map.put("키값6", "데이터6");
// 방법1 : Interator
System.out.println("방법1");
Iterator<String> keys = map.keySet().iterator();
// 해시맵 map에 있는 키 값들은 집합(Set)의 형태로 반환하는 keySet()
// 반환된 집합의 각각의 데이터들을 순차검색할 수 있도록 Iterator를 선언하고 iterator() 함수를 통해 검색
while( keys.hasNext() ){ // 다음 키 값이 존재할 때
String key = keys.next(); // 다음 키 값을 불러온다.
System.out.println( String.format("키 : %s, 값 : %s", key, map.get(key)) );
// 키 값에 맞는 데이터를 불러온다.
}
// 방법2 : keySet
System.out.println("방법2");
for( String key : map.keySet() ){
// 해시맵 map에 있는 키 값들을 집합(Set)의 형태로 반환하는 keySet()
// for 문의 대상을 keySet()으로 바로 불러와서 각각의 key 요소들을 불러온다
// 해당 key의 요소를 키 값으로 가지는 데이터들을 불러온다.
System.out.println( String.format("키 : %s, 값 : %s", key, map.get(key)) );
}
// 방법3 : entrySet
System.out.println("방법3");
for( Map.Entry<String, String> elem : map.entrySet() ){
// entrySet()은 키 값과 데이터가 모두 필요할 때 사용된다.
// 기본적으로 키값과 데이터를 불러오기 위한 과정은 방법1,2와 동일하게 다음과 같다.
// 1. keySet()을 통하여 키 값들을 하나씩 불러온다.
// 2. 불러온 키 값을 토대로 get()을 통해 키 값에 해당하는 데이터를 불러온다.
// 위와 같은 방법은 탐색을 2번이나 해야되는 불필요한 검색(Lookup)과정이 존재한다.
// 따라서, 키 값과 데이터를 한꺼번에 불러와서 불필요한 검색 과정을 줄일 수 있도록 한 것이다.
System.out.println( String.format("키 : %s, 값 : %s", elem.getKey(), elem.getValue()) );
}
}
}
출처 : https://stove99.tistory.com/96
'Web Programing! > JAVA / JSP' 카테고리의 다른 글
[JAVA] JPA Optional, ifPresent를 통한 null체크 (0) | 2022.03.23 |
---|---|
[JAVA] List의 특정 ID별 Sum값 구하기 (0) | 2021.11.18 |
[JAVA] LIST, 배열 값 합치기(SUM) - 람다식 (0) | 2021.11.17 |
[JAVA] 자바 유일키 생성 - java.util.UUID (0) | 2019.09.27 |
[spring boot] context-path, 포트 설정 (0) | 2019.09.20 |
[JAVA] Header 정보 가져오기 (0) | 2019.09.19 |
[JAVA] 시작과 끝 시간 측정 (0) | 2019.09.18 |