자바에서 Map 안의 Map 데이터를 다루는 방법
자바에서 데이터 구조로 Map
을 사용할 때, 특히 Map 안에 Map이 포함된 구조를 다루는 상황이 종종 발생합니다. 이번 포스팅에서는 이러한 구조의 데이터를 꺼내는 방법을 단계별로 설명해 드리겠습니다.
📌 상황 설명
디버깅을 통해 확인한 변수 commonMap
의 구조는 아래와 같습니다:
[{ key : value }]
즉, 리스트(List) 안에 Map이 포함된 형태입니다. 이런 구조에서 내부 Map의 데이터를 접근하고, 별도의 Map에 담아 사용하는 방법을 알아보겠습니다.
📋 코드 예제: Map 안의 Map 데이터 꺼내기
import java.util.*;
public class NestedMapExample {
public static void main(String[] args) {
// 예제 데이터: List 안에 Map이 포함된 구조
List<Map<String, Object>> commonMap = new ArrayList<>();
Map<String, Object> nestedMap = new HashMap<>();
nestedMap.put("key", "value");
commonMap.add(nestedMap);
// 새로운 Map을 생성
Map<String, Object> paramMap = new HashMap<>();
// 첫 번째 인덱스에 있는 Map 데이터를 가져와서 paramMap에 담기
paramMap = commonMap.get(0);
// 특정 key의 값을 가져오기
String value = (String) paramMap.get("key");
// 출력
System.out.println("key 값: " + value);
}
}
🛠️ 코드 해설
🧩 응용: 여러 Map 데이터를 처리하기
만약 commonMap
에 여러 Map이 포함된 경우, 반복문을 활용해 데이터를 처리할 수 있습니다:
for (Map<String, Object> map : commonMap) {
System.out.println("Map 데이터: " + map);
System.out.println("key 값: " + map.get("key"));
}
✅ 정리
자바에서 Map 안의 Map 데이터를 꺼내는 방법은 크게 어렵지 않습니다.
- 리스트에서 원하는 Map 데이터를 가져오고,
- 필요한 값을
get()
메서드를 통해 꺼내면 됩니다.
이 방법을 활용하면 다양한 데이터 구조를 유연하게 다룰 수 있습니다. 이 글이 도움이 되셨다면, 댓글로 응원의 메시지를 남겨주세요! 😊