컬렉션 프레임워크 (Collection Framework) - 6.6. HashTable

CJI0524·2024년 7월 13일

Java/Collection Framework

목록 보기
24/26

1. Hashtable

자바의 HashTable 클래스는 Map 인터페이스를 구현했으며 동기화된 키-값 (key-values) 매핑을 제공합니다. 이 클래스는 기본적으로 Dictionary 클래스를 상속받으며, 멀티스레드 환경에서 안전하게 사용할 수 있도록 동기화되어있다. 다만 HashTable은 구버전의 데이터 구조이므로 현대 자바 프로그래밍에서는 새로운 버전인 HashMap 등의 컬렉션을 사용할 것을 권장한다.

2. Hashtable 클래스에 정의된 메서드 목록

2.1. 생성자

메서드기능
Hashtable()초기 용량이 11이고 load factor가 0.75인 빈 Hashtable을 생성
Hashtable(int initialCapacity)지정된 초기 용량의 빈 Hashtable을 생성
Hashtable(int initialCapacity, float loadFactor)지정된 초기 용량과 load factor의 빈 Hashtable을 생성
Hashtable(Map t)다른 맵(t)의 요소들을 담은 Hashtable을 생성

2.2. 삽입 / 탐색 / 삭제 메서드

반환타입이 boolean인 메서드들은 작업에 성공하거나 사실이면 true, 아니면 false를 반환한다.

삽입

메서드기능
Object put(Object key, Object value)Hashtable에 value 객체를 key 객체에 연결하여 저장
void putAll(Map t)지정된 Hashtable의 모든 key-value 쌍을 추가

탐색

메서드기능
boolean containKey(Object key)지정된 key 객체와 일치하는 Hashtable의 key 객체가 있는지 확인
boolean containValue(Object value)지정된 value 객체와 일치하는 Hashtable의 value 객체가 있는지 확인
boolean contains(Object value)지정된 값(value)이 해시 테이블에 존재하는지 확인
Set entrySet()Hashtable에 저장되어 있는 모든 key-value 쌍을 Hashtable.Entry 타입의 객체로 저장한 Set을 반환
Set keySet()Hashtable에 저장된 모든 key 객체를 반환
Collection values()Hashtable에 저장된 모든 value 객체를 반환
Object get(Object key)지정된 키에 연결된 값을 반환
키가 존재하지 않으면 null을 반환
Enumeration keys()Hashtable의 키(key)들을 열거형(Enumeration)으로 반환
Enumeration elements()Hashtable의 값(values)들을 열거형(Enumeration)으로 반환

삭제

메서드기능
Object remove(Object key)지정한 key 객체와 일치하는 key-value 객체를 삭제
void clear()Hashtable의 모든 객체를 삭제

2.3. Hashtable.Entry 클래스에서 정의된 메서드

메서드기능
boolean equals(Obejct o)동일한 Entry인지 비교
Object getKey()Entry의 key 객체를 반환
Object getValue()Entry value 객체를 반환
int hashCode()Entry의 해시코드를 반환
Object setValue(Object value)Entry의 value 객체를 지정된 객체로 변경

2.4. 추가 핵심 기능

Object 메서드

메서드기능
boolean equals(Object o)동일한 Hashtable인지 비교
int hashCode()해시코드를 반환

컬렉션 상태 체크 / 변경

메서드기능
boolean isEmpty()Hashtable이 비어있는지 확인
int size()Hashtable에 저장된 key-value 쌍의 개수를 반환

이러한 기능을 가진 HashtableProperties클래스가 상속한다.

3. 해당 게시글 작성에 참고한 글 목록

자바의 정석 3판 (저자 : 남궁성)
Java Collections Framework Video Tutorial
오라클 Java 문서

profile
개발돌이

0개의 댓글