Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java Dictionary 클래스 완벽 가이드: 개념부터 주요 메서드와 활용 예제까지

Java의 Dictionary 클래스는 키(key)/값(value) 쌍을 표현하는 추상 클래스(abstract class)로, Map 인터페이스와 유사한 방식으로 동작합니다. 이 클래스는 Java 초기 버전부터 존재해 온 레거시(legacy) 클래스에 해당합니다.

Dictionary 클래스에서 가장 핵심적인 두 가지 메서드는 keys()elements()입니다. 이 두 메서드는 각각 키와 값의 집합을 반환하며, Enumeration 객체를 통해 순회(iteration)할 수 있습니다. 그 외에도 자주 사용되는 메서드로는 isEmpty(), get(), remove(), size() 등이 있습니다.

문법(Syntax)

public abstract class Dictionary<K,V> extends Object

Dictionary는 추상 클래스이기 때문에 직접 인스턴스를 생성할 수 없으며, 일반적으로 하위 클래스인 Hashtable을 통해 객체를 생성하여 사용합니다.

예제 코드(Example)

import java.util.*;
public class DictionaryTest {
    public static void main(String[] args) {
        Dictionary<Integer, String> dic = new Hashtable<Integer, String>();
        dic.put(1, "Adithya");
        dic.put(2, "Jaidev");
        dic.put(3, "Raja");

        // keys() 메서드로 키 전체를 Enumeration으로 순회
        Enumeration<Integer> key = dic.keys();
        while(key.hasMoreElements()) {
            System.out.println(key.nextElement());
        }

        // elements() 메서드로 값 전체를 Enumeration으로 순회
        Enumeration<String> element = dic.elements();
        while(element.hasMoreElements()) {
            System.out.println(element.nextElement());
        }
    }
}

실행 결과(Output)

3
2
1
Raja
Jaidev
Adithya

참고 사항

Dictionary 클래스는 현재 구식(legacy) API로 분류되어 있으며, 최신 Java 코드에서는 Map 인터페이스와 그 구현체인 HashMap, Hashtable 등을 사용하는 것이 권장됩니다. 다만 레거시 시스템 유지보수나 기존 코드 분석 시에는 Dictionary의 동작 방식을 이해해 두는 것이 도움이 됩니다.