• 締切済み

java enum

private enum test {test1, test2, test3;} このenumに対して0~3の値を使ってtest1、test2、test3 を表示させることは出来るのでしょうか やり方などよろしくお願いします。

みんなの回答

回答No.2

質問の回答になっているのかちょっと自信はありませんが、整数とenumは次のようにして対応付けすることは可能です。 public class EnumPrinter { private enum test {test1, test2, test3;} public static void main(String[] args) { for (int i = 0; i < 3; ++i) { System.out.println(test.values()[i]); } } } ただし、0~2までしか使っていません。このプログラムを実行すると test1 test2 test3 と出力されます。

taroyamu
質問者

お礼

回答ありがとうございました。 助かりました。

noname#94983
noname#94983
回答No.1

まぁ、このtestの配列を用意してそこに要素をまとめておき、その配列から取り出せば、0~2の数字でtestの要素を取り出せるとは思うが。そもそも「数字を使って値を取り出す」のであれば、それはenumにすべきものではないだろう。 また「test1、test2、test3を表示させる」というのが、どうも気になる。test1をどこかに表示しても、おそらく「test1」とは表示されないが、それでいいんだろうか? test1は、"test1"という文字列ではない。test1はtest1という値であって、それをprintlnしたときどんな値が出力されるかは全く保証されないはずだ。

taroyamu
質問者

お礼

回答ありがとうございました。

関連するQ&A