以前は、LegNo列挙型を次のように定義していました。
NO_LEG, LEG_ONE, LEG_TWOを呼び出すことでreturn LegNo.values()[i];、各列挙型に関連付けられた値を取得できました。
しかし、今ではLegNoenum NO_LEGを0ではなくint -1 にしたいので、プライベートコンストラクターを使用してそのint値を初期化および設定することにしました
NO_LEG(-1), LEG_ONE(1), LEG_TWO(2);
private LegNo(final int leg) { legNo = leg; }唯一のことは、この方法で実行しているため、values()メソッドがNO_LEG列挙型に対して機能しないことです。intに関連付けられた列挙型を取得するにはどうすればよいですか?case switchステートメントまたはif-elseif-elseifを使用する以外に、これを行う効率的な方法はありますか
enumからのint値の取得に関連する多くのSOの質問を見ることができますが、その逆です。