JAVA/포스팅

자바 컬렉션 프레임워크 HashMap

짜집퍼박사(짜박) 2023. 11. 18. 11:21

HashMap은 Java 컬렉션 프레임워크에서 제공하는 클래스 중 하나로, 키와 값으로 이루어진 데이터를 저장하는 해시 테이블 기반의 맵(Map)을 구현한 클래스입니다. HashMap은 순서를 보장하지 않으며, 중복된 키는 허용하지 않습니다.

 

1. HashMap의 특징

- 키-값 쌍 저장: HashMap은 키와 값의 쌍으로 데이터를 저장합니다. 각 키는 고유해야 하며, 각 키에 대응하는 값은 중복될 수 있습니다.
- 순서 없음: HashMap은 요소의 순서를 보장하지 않습니다. 즉, 저장된 순서와 검색된 순서가 일치하지 않습니다.
- Null 허용: 하나의 키는 하나의 null 값을 가질 수 있으며, 값은 여러 개의 null 값을 가질 수 있습니다.

 

2. HashMap의 주요 메서드

- put(K key, V value): 지정된 키와 값으로 맵에 쌍을 추가합니다.
- get(Object key): 지정된 키에 매핑된 값을 반환합니다.
- remove(Object key): 지정된 키에 매핑된 값을 제거합니다.
- containsKey(Object key): 지정된 키가 맵에 포함되어 있는지 확인합니다.
- containsValue(Object value): 지정된 값이 맵에 포함되어 있는지 확인합니다.
- size(): 맵에 포함된 키-값 쌍의 개수를 반환합니다.
- clear(): 맵에서 모든 키-값 쌍을 제거합니다.

 

HashMap 사용 예제

import java.util.HashMap;
import java.util.Map;

public class HashMapExample {
    public static void main(String[] args) {
        // HashMap 생성
        Map<String, Integer> hashMap = new HashMap<>();

        // 요소 추가
        hashMap.put("One", 1);
        hashMap.put("Two", 2);
        hashMap.put("Three", 3);
        hashMap.put("Four", 4);

        System.out.println("HashMap: " + hashMap);

        // 요소 조회
        System.out.println("Value for key 'Two': " + hashMap.get("Two"));

        // 요소 제거
        hashMap.remove("Three");

        System.out.println("After removing 'Three': " + hashMap);

        // 특정 키가 포함되어 있는지 확인
        System.out.println("Contains key 'Four'? " + hashMap.containsKey("Four"));

        // 특정 값이 포함되어 있는지 확인
        System.out.println("Contains value 3? " + hashMap.containsValue(3));

        // 크기 확인
        System.out.println("Size: " + hashMap.size());

        // 모든 요소 제거
        hashMap.clear();

        System.out.println("After clearing: " + hashMap);
    }
}

위의 예제에서는 HashMap을 생성하고 여러 메서드를 사용하여 요소를 추가, 제거, 조회, 확인 및 크기를 확인하는 등의 작업을 수행하였습니다. 출력 결과에서 볼 수 있듯이, HashMap은 순서를 보장하지 않으므로 요소가 저장된 순서와 출력 순서가 다를 수 있습니다.

 

With ChatGPT