[Java] Map 관련 Iterate(반복문) 방법
- 📕 Programing/Java
- 2021. 3. 22. 16:09
Map 조회에는 3가지 방법이 있다
- Iterator
- Entry
- KeySet
- Java8 forEach, Lambda
예제1
package com.kyhslam;
import org.junit.Test;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class MapTest {
@Test
public void maptest() {
HashMap<String,String> map = new HashMap<>();
map.put("A", "TEST");
map.put("B", "TEST2");
map.put("C", "TEST3");
// 방법1: Iterator 사용
Iterator<String> keys = map.keySet().iterator();
while(keys.hasNext()) {
String key = keys.next();
System.out.println(key + " :: " + map.get(key));
}
/*A :: TEST
B :: TEST2
C :: TEST3*/
System.out.println("======================");
// 방법2 : Entry 사용
for(Map.Entry<String, String> tmap : map.entrySet()) {
System.out.println(tmap.getKey() + " :: " + tmap.getValue());
}
/* A :: TEST
B :: TEST2
C :: TEST3*/
System.out.println("======================");
// 방법3 : KeySet 사용
for(String key : map.keySet()) {
System.out.println(key + " :: " + map.get(key));
}
/*A :: TEST
B :: TEST2
C :: TEST3*/
// 방법3 : Java8 forEach, Lambda
map.forEach((k, v) -> {
System.out.println(k + " :: " + v);
});
}
}
예제2
package com.kyhslam.collection;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class mapTest {
public static void main(String[] args) {
HashMap<String,String> m = new HashMap<>();
m.put("A", "사과");
m.put("B", "바나나");
m.put("C", "참외");
// key 값만 출력
Set<String> keySet = m.keySet();
for(String tempKey : keySet) {
System.out.println(tempKey);
}
// value만 출력
Collection<String> values = m.values();
for(String tempValue : values) {
System.out.println(tempValue);
}
// Set을 활용한 출력
Set<Map.Entry<String,String>> entries = m.entrySet();
for(Map.Entry<String,String> tempEntry: entries) {
System.out.println(tempEntry.getKey() + " = " + tempEntry.getValue());
}
}
}
'📕 Programing > Java' 카테고리의 다른 글
[Java] SAP RFC 조회 (0) | 2021.08.31 |
---|---|
[Java] Arryas 기본 사용법 (0) | 2021.06.07 |
[Java] 람다식(Lambda Expression) (0) | 2020.12.01 |
[Java] 람다식(Lambda Expression) 실습 (0) | 2020.07.28 |
[Java] CPU, Memory 사용량 (0) | 2020.07.23 |