자바에서 Map은 키(Key)와 값(Value)으로 데이터를 관리하는 자료구조입니다. 각각의 키-값 쌍은 서로 연결되어 있으며, 특정 키를 통해 값을 검색하거나 수정할 수 있습니다. 자바에서는 java.util 패키지에서 Map 인터페이스를 제공하며, 이를 구현한 여러 클래스들이 있습니다.
HashMap
HashMap은 가장 일반적으로 사용되는 Map 구현체입니다. 내부적으로 해시 테이블을 사용하여 데이터를 저장하며, 키의 해시값을 기반으로 데이터의 조회 및 수정이 빠릅니다. 다음은 HashMap의 예시입니다.
Map<String, Integer> scores = new HashMap<>();
scores.put("Alice", 90);
scores.put("Bob", 85);
scores.put("Charlie", 95);
int bobScore = scores.get("Bob"); // 85 반환
위의 예시에서는 HashMap을 사용하여 문자열 키와 정수 값으로 이루어진 데이터를 저장하고, put 메서드로 데이터를 추가하고, get 메서드로 특정 키에 해당하는 값을 조회합니다.
TreeMap
TreeMap은 데이터를 정렬된 상태로 유지하는 Map 구현체입니다. 내부적으로 이진 검색 트리(Binary Search Tree)를 사용하여 데이터를 저장하며, 키에 대한 정렬된 순서로 데이터를 조회할 수 있습니다. 다음은 TreeMap의 예시입니다.
Map<String, Integer> scores = new TreeMap<>();
scores.put("Alice", 90);
scores.put("Bob", 85);
scores.put("Charlie", 95);
Map.Entry<String, Integer> firstEntry = scores.firstEntry();
String firstKey = firstEntry.getKey(); // "Alice" 반환
int firstValue = firstEntry.getValue(); // 90 반환
위의 예시에서는 TreeMap을 사용하여 문자열 키와 정수 값으로 이루어진 데이터를 저장하고, put 메서드로 데이터를 추가하고, firstEntry 메서드로 첫 번째 키-값 쌍을 조회합니다.
Map의 다양한 기능
Map은 데이터를 관리하는 다양한 기능을 제공합니다. 몇 가지 주요한 기능은 다음과 같습니다.
- 데이터 추가/수정: put 메서드를 사용하여 데이터를 추가하거나 수정할 수 있습니다.
- 데이터 삭제: remove 메서드를 사용하여 특정 키에 해당하는 데이터를 삭제할 수 있습니다.
- 데이터 조회: get 메서드를 사용하여 특정 키에 해당하는 값을 조회할 수 있습니다.
- 키-값 쌍 확인: containsKey와 containsValue 메서드를 사용하여 특정 키 또는 값의 존재 여부를 확인할 수 있습니다.
Map을 사용하면 효율적인 데이터 검색과 관리가 가능하며, 다양한 연산을 수행할 수 있습니다. 적절한 Map 구현체를 선택하여 프로그램의 요구사항에 맞게 데이터를 관리해보세요.
'IT > java' 카테고리의 다른 글
자바(Java) Set: 집합 개념의 데이터 구조 (0) | 2023.06.09 |
---|---|
자바 이터레이터(Iterator): 컬렉션의 요소를 순회하며 접근하기 위한 인터페이스 (0) | 2023.06.09 |
자바 리스트: 데이터를 유연하게 관리하는 도구 (0) | 2023.06.09 |
자바 제네릭: 타입 안정성을 위한 강력한 도구 (1) | 2023.06.09 |
자바(Java)에서 날짜와 시간 얻기 (0) | 2023.06.09 |
댓글