>Java >java지도 시간 >Java如何使用EnumMap类实现基于枚举的键值对集合

Java如何使用EnumMap类实现基于枚举的键值对集合

WBOY
WBOY원래의
2023-07-24 21:37:101573검색

Java가 EnumMap 클래스를 사용하여 키-값 쌍의 열거 기반 컬렉션을 구현하는 방법

개요:
EnumMap은 키-값 쌍의 열거 기반 컬렉션을 구현하는 데 사용되는 Java 컬렉션 프레임워크의 특수 구현 클래스입니다. 키는 열거형만 될 수 있고 HashMap보다 성능이 더 좋은 것이 특징입니다. 이 기사에서는 EnumMap 클래스를 사용하는 방법을 소개하고 코드 예제를 제공합니다.

  1. EnumMap 클래스에 대한 기본 소개
    EnumMap은 Java 컬렉션 프레임워크의 클래스로 AbstractMap 클래스를 상속하고 NavigableMap 인터페이스를 구현합니다. EnumMap의 키 세트는 열거형만 가능하며, 생성을 위한 매개변수로 열거형 클래스를 전달해야 합니다. EnumMap 클래스는 열거 유형의 키-값 쌍 컬렉션을 조작하고 탐색하는 다양한 메서드를 제공합니다.
  2. EnumMap의 구성 방법
    EnumMap 클래스는 여러 구성 방법을 제공하며 일반적으로 사용되는 방법은 다음과 같습니다.
  3. EnumMap(Class enumType): 지정된 열거 유형을 사용하여 빈 EnumMap 인스턴스를 만듭니다.
  4. EnumMap(EnumMap93085e8be783d6e9b38a1ef25f89f539 map): 지정된 EnumMap 인스턴스를 사용하여 새 EnumMap 인스턴스를 초기화합니다.
  5. EnumMap(Map93085e8be783d6e9b38a1ef25f89f539 map): 지정된 Map 인스턴스를 사용하여 새 EnumMap 인스턴스를 초기화합니다.
  6. EnumMap의 기본 사용법
    다음으로 EnumMap 클래스를 사용하여 열거형을 기반으로 하는 키-값 쌍 모음을 구현하는 방법을 살펴보겠습니다.

코드 예:

import java.util.EnumMap;

public class EnumMapExample {
    
    // 定义一个枚举类型
    enum Day {
        MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
    }
    
    public static void main(String[] args) {
        
        // 创建一个EnumMap实例
        EnumMap<Day, String> enumMap = new EnumMap<>(Day.class);
        
        // 添加键值对
        enumMap.put(Day.MONDAY, "星期一");
        enumMap.put(Day.TUESDAY, "星期二");
        enumMap.put(Day.WEDNESDAY, "星期三");
        
        // 获取值
        System.out.println(enumMap.get(Day.MONDAY));
        
        // 遍历EnumMap
        for (Day day : enumMap.keySet()) {
            System.out.println(day + ":" + enumMap.get(day));
        }
        
        // 判断键是否存在
        System.out.println(enumMap.containsKey(Day.SUNDAY));
    }
}

출력 결과:

星期一
MONDAY:星期一
TUESDAY:星期二
WEDNESDAY:星期三
false

위의 코드 예에서는 먼저 EnumMap에 키가 존재하는지 확인하는 열거형 Day,包含七个枚举常量。然后我们创建了一个EnumMap实例,并添加了几个键值对。通过enumMap.get(key)方法可以获取指定键的值。我们还展示了如何遍历EnumMap,并使用containsKey(key)메서드를 정의합니다.

  1. EnumMap의 성능 이점
    EnumMap은 HashMap에 비해 몇 가지 성능 이점이 있습니다.
  2. 내부 구현은 HashMap의 연결된 목록 또는 레드-블랙 트리와 비교할 때 EnumMap의 쿼리 및 삽입 작업이 더 빠릅니다.
  3. EnumMap은 키의 해시 값을 저장하는 데 추가 저장 공간이 필요하지 않기 때문에 저장 공간을 덜 차지합니다.

요약:
EnumMap은 열거 기반 키-값 쌍 컬렉션을 구현하는 데 사용되는 Java 컬렉션 프레임워크의 특수 구현 클래스입니다. 효율적인 성능과 작은 저장 공간을 갖추고 있습니다. 본 글의 소개를 통해 EnumMap 클래스의 구성 방법과 기본적인 사용법을 이해하고, 이에 따른 코드 예제를 제공한다. 실제 개발에서 열거형 클래스를 기반으로 키-값 쌍 컬렉션을 구현해야 할 때 EnumMap은 매우 좋은 선택입니다.

위 내용은 Java如何使用EnumMap类实现基于枚举的键值对集合의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:다음 기사: