Map은 키-값(key-value) 쌍으로 데이터를 저장하는 자료구조입니다. 간단히 말하면, 특정 키를 이용해 원하는 값을 빠르게 찾을 수 있게 해주는 구조이다.
1. 기본 개념
- 인터페이스 이름: java.util.Map
- 대표적인 구현체:
- HashMap (가장 많이 사용됨)
- TreeMap (정렬된 순서 유지)
- LinkedHashMap (입력 순서 유지)
- ConcurrentHashMap (동시성 지원)
2. 주요 특징
- Key는 중복될 수 없음 (Set처럼 유일해야 함)
- Value는 중복 가능
- 빠른 검색, 삽입, 삭제를 위해 주로 사용
3. 사용 예시 (HashMap 기준)
import java.util.HashMap;
import java.util.Map;
public class MapExample {
public static void main(String[] args) {
Map<String, Integer> scoreMap = new HashMap<>();
// 값 추가
scoreMap.put("Alice", 90);
scoreMap.put("Bob", 85);
scoreMap.put("Charlie", 95);
// 값 가져오기
System.out.println(scoreMap.get("Alice")); // 90
// 값 수정
scoreMap.put("Bob", 88);
// 키 존재 여부 확인
System.out.println(scoreMap.containsKey("Charlie")); // true
// 전체 순회
for (String key : scoreMap.keySet()) {
System.out.println(key + ": " + scoreMap.get(key));
}
// 제거
scoreMap.remove("Alice");
}
}
4. 메서드 요약
메서드 설명
put(key, value) | 값 추가 또는 수정 |
get(key) | 키에 해당하는 값 가져오기 |
remove(key) | 해당 키의 항목 제거 |
containsKey(key) | 해당 키 존재 여부 확인 |
containsValue(value) | 해당 값 존재 여부 확인 |
keySet() | 모든 키 가져오기 (Set 반환) |
values() | 모든 값 가져오기 (Collection 반환) |
entrySet() | key-value 쌍을 모두 가져오기 (Set<Map.Entry> 반환) |
'공부 > 자바(Java)' 카테고리의 다른 글
Java) Queue란? (큐 간단 설명, 사용법, 예제) (3) | 2025.04.05 |
---|---|
Java) Stack이란? (간단 설명, 사용법, 예시) (0) | 2025.04.05 |
Java) List란? (ArrayList, LinkedList, Vector 설명, 사용법, 예시) (0) | 2025.04.05 |
Java) HashMap, TreeMap, LinkedHashMap이란? (설명, 사용법, 예시) (0) | 2025.04.04 |
JAVA) 경로 안의 파일들 목록 텍스트 파일로 저장하기 (2) | 2025.03.24 |