enum(列挙型)とint(数値)の相互変換方法
ordinalで順番を取得して数値に変換する。
enum EnumTest {A, B, C}; EnumTest e = EnumTest.A; int i = e.ordinal();
valuesで配列を取得し配列アクセスで列挙型に変換する。
配列境界チェックを超えるとArrayIndexOutOfBoundsException例外が発生するので自力でなんとかすること。
enum EnumTest {A, B, C}; int i = 0; if(0 <= i && i < EnumTest.values().length) { EnumTest e = EnumTest.values()[i]; } else { // ArrayIndexOutOfBoundsException }