????Java1.5????????enum?????????ù??????????????????????????????
????enum Season {
????SPRING?? SUMMER?? AUTUMN?? WINTER
????}
?????????????????????????
??????????У?????Season.SPRING???????Season.SPRING.name()?????????????????????“SPRING”?????????Season.valueOf(“SPRING”)???????????????Season.SPRING???????????name()??????valueOf(String)?????????????????????????????????????????????valueOf(String)??????????????????????????????????????IllegalArgumentException????
????????????????Java???????????????java.lang.Enum????????????“javap -c Season”??????????????????Enum?????????ordinal()????????????????????????????????????SPRING?? SUMMER?? AUTUMN?? WINTER??????????0?? 1?? 2?? 3??????Щ????£??????????????????????????п?????????????????????????????????????Enum???????valueOf(int)?????????????????????????
???????????????????????????????????values()??????????????values()????????????????????飬?????????Season[]????????????????????С???????????????????У??????????????????valueOf(int)??????????????????±?????????????????????????£?
enum Season {
SPRING?? SUMMER?? AUTUMN?? WINTER;
public static Season valueOf(int ordinal) {
if (ordinal < 0 || ordinal >= values().length) {
throw new IndexOutOfBoundsException("Invalid ordinal");
}
return values()[ordinal];
}
}
??????????????????????