Map 컬렉션
: 키(key)와 값(value) 으로 구성된 엔트리(entry) 객체를 저장하는 자료구조이다
중복된 키를 허용하지 않고 각 키는 하나의 값과 연결된다
| 구현 클래스 | 특징 | 정렬 여부 | 속도 | Null 허용 여부 |
| HashMap | 해시 테이블 기반, 키-값 쌍 저장 | 정렬되지 않음 | 검색/삽입/삭제: O(1) 평균 | null 키와 값 허용 |
| TreeMap | 키의 자연 순서 또는 사용자 정의 순서에 따라 정렬 | 오름차순 정렬 | 검색/삽입: O(log n) | null 키 허용 안 함 |
| LinkedHashMap | 삽입 순서 또는 접근 순서 유지 | 삽입 순서 또는 접근 순서 | 검색/삽입/삭제: O(1) 평균 | null 키와 값 허용 |
| Hashtable | 해시 테이블기반의 동기화된 구현, 스레드 안전 | 정렬되지 않음 | 검색/삽입/삭제:O(1) 평균 | null 키와 값 허용 안 함 |
| 구분 | 메서드 | 설명 |
| 객체 추가 | put(K key, V value) | 키와 값을 추가하며, 동일한 키가 존재할 경우 값을 덮어쓴다 |
| putAll(Map m) | 다른 Map의 모든 키-값 쌍을 현재 Map에 추가한다 | |
| 객체 검색 |
V get(Object key) | 지정한 키에 해당하는 값을 반환합니다. 키가 존재하지 않으면 null을 반환한다 |
| boolean containsKey(Object key) | 특정 키가 Map에 존재하는지 확인하고, 존재하면 true를 반환한다 | |
| boolean containsValue(Object value) | 특정 값이 Map에 존재하는지 확인하고, 존재하면 true를 반환한다 | |
| keySet() | 모든 키를 Set으로 반환한다 | |
| Collection<V>values() | 모든 값을 Collection으로 반환한다 | |
| Set<Map.Entry<K,V>>entrySet() | 키-값 쌍을 Set<Map.Entry<K,V>> 형태로 반환하여 반복할 수 있다 | |
| int size<> | 저장된 키의 총 수를 반환 | |
| boolean isEmpty() | 컬렉션이 비어있는지 여부 | |
| 객체 삭제 | V remove(Object key) | 특정 키와 그에 해당하는 키-값 쌍을 제거합니다. 키가 없으면 아무 작업도 수행하지 않는다 |
| void clear() | Map의 모든 객체를 제거한다 |
- Properties 클래스는 map 인터페이스를 구현한 특수한 혀애의 Hashtable 이다
주로 애플리케이션의 설정 값이나 구성 파일을 관리할 때 사용된다
Properties 클래스는 키와 값이 모두 String(문자열) 로 제한되어있다
주로 확장자가 .properties인 프로퍼티 파일을 읽을 때 사용한다
'Java' 카테고리의 다른 글
| Java_컬렉션 자료구조_검색기능을 강화시킨 컬렉션_TreeMap (0) | 2024.10.18 |
|---|---|
| Java_컬렉션 자료구조_검색기능을 강화시킨 컬렉션_TreeSet (0) | 2024.10.18 |
| Java_컬렉션 자료구조_Set 컬렉션 (0) | 2024.10.17 |
| Java_컬렉션 자료구조_Vector (0) | 2024.10.17 |
| Java_컬렉션 자료구조_ArrayList,LinkedList (0) | 2024.10.17 |