반응형
[Effective Java] ordinal 인덱스 대신 EnumMap 을 사용하자. |
-
EnumMap 은 enum 을 키로 사용하도록 설계된 가장 빠른 Map 이다.
서수를 인덱스로 사용하는 배열에 비해 처리 속도도 견줄만 하다. 내부적으로 그런 배열을 사용하기 때문이다.
Map 의 풍부한 기능과 타입 안전 및 배열의 처리 속도를 모두 가지고 있으면서 상세한 내역은 프로그래머에게 숨기고 있다.
EnumMap 은 생성자에 class 를 인자로 받는다.
Summary
ordinal 을 사용해서 배열을 인덱싱하는 것은 적합하지 않다.
만일 표현하고자 하는 관계가 다차원적이라면 EnumMap<..., EnumMap<...>> 을 사용하자.
반응형
'프로그래밍 놀이터 > 디자인 패턴, 리펙토링' 카테고리의 다른 글
[Effective Java] 작명 패턴보다는 주석(annotation)을 사용하자. (0) | 2017.01.02 |
---|---|
[Effective Java] 인터페이스를 사용해서 확장 가능한 enum 을 만들자. (0) | 2016.12.29 |
[Effective Java] 비트(bit) 필드 대신 EnumSet 을 사용하자. (0) | 2016.12.26 |
[Effective Java] ordinal 대신 인스턴스 필드를 사용하자. (0) | 2016.12.20 |
[Effective Java] int 상수 대신 enum 을 사용하자. (0) | 2016.12.19 |
댓글