ITEM 37: ordinal 인덱싱 대신 EnumMap을 사용해라
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
class Plant {
enum LifeCycle { ANNUAL, PERENNIAL, BIENNIAL }
final String name;
final LifeCycle lifeCycle;
@Override
public String toString() {
return name;
}
}Set<Plant>[] plantsByLifeCycle = (Set<Plant>[]) new Set[Plant.LifeCycle.values().length];
for (int i = 0; i < plantsByLifeCycle.length; i++) {
plantsByLifeCycle[i] = new HashSet<>();
}
for (Plant p : garden) {
plantsByLifeCycle[p.lifeCycle.ordinal()].add(p)
}EnumMap 미사용
EnumMap 사용
Last updated