アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんにちは.
java初心者です.
列挙型について勉強しています.
列挙型の中にファイル名を紐付けて利用したいと考えています.
要素名から要素番号を取得する方法はordinal()で出来ますが,
その逆で,要素番号から要素名を取得する方法が調べても分かりませんでした.

具体的には,以下のソースで乱数を発生させ,その番号の要素名を取得する方法が知りたいです.
よろしくお願いします.

===========================
import java.util.Random;

public class Sample {
// 列挙型
enum Color{
RED("data1.txt"),
BLUE("data2.txt"),
GREEN("data3.txt"),
NUM("");

private String name;
Color(String name){
this.name = name;
}
public String getName(){
return name;
}
}

public static void main(String args[]){

for(int i=0;i<10;i++){

Random rnd = new Random();
int id = rnd.nextInt(Color.NUM.ordinal());// ランダム
Color c = null;
System.out.println("要素番号" + id + "の要素名は" /* + Colorのid番目の要素名 */ + "ファイル名は" + c.getName() + "です");

}
}

}
===========================

A 回答 (1件)

Color.values()[id]



ただし、順序と要素を対応させる必要があるならenumではなく、配列を検討すべきです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!