2010-01-02 12 views
1

열거 형 값 (예 : EnumValueMap<K,V extends Enum<V>>)을 제외하고 EnumMap과 같은 클래스를 찾고 있습니다. 내가 매핑, 말, 10 개 열거 유형에 몇 백만 객체가 있었다면열거 형 값과 함께 사용하기 위해 EnumMap의 Java에 해당합니까?

http://java.sun.com/javase/6/docs/api/java/util/EnumMap.html

편집


, 나는 적어도보다 더 많은 메모리 효율적인 구현을 만들 수있을 것입니다 상상 그냥 HashMap<Object, V extends Enum<V>>을 사용합니다. 아마 아닐거야.

+0

그런 수업에서 어떤 장점이 있습니까? EnumMap은 값이 배열에 저장되고 Enum 상수의 서수가 해당 배열의 인덱스이므로 크기가 작고 효율적으로 구현됩니다. 그러나 Objects에서 Enums probalby로 매핑하면 구현 이점이 없으므로 맵 구현을 사용할 수 있습니다. – axtavt

답변

2

내가 유형 값을 열거 형 개체를 매핑하고 싶습니다. Set 인터페이스가 아닌 Map 인터페이스를 사용하여 무언가를 찾고 있습니다.

글쎄 그것은 당신이 필요로하는 것이 HashMap<Object, V extends Enum<V>> 인 것으로 들립니다.

1

원하는지도 구현 (예 : HashMap)을 사용할 수 있습니다. Java의 열거 형은 클래스이며 그 값은 객체이므로 특별한 처리가 필요하지 않습니다.

열거 형 키에 대해서도 마찬가지입니다. EnumMap (및 EnumSet)는 단순히/.../빠를 적은 메모리를 사용할 수 있으므로 열거에 최적화되어