私がこのような列挙型を持っている場合:
public enum Letter {
A,
B,
C,
//...
}
ランダムに1つを選択する最良の方法は何ですか?本番品質の完全なものである必要はありませんが、かなり均等に配布することをお勧めします。
私はこのようなことができました
private Letter randomLetter() {
int pick = new Random().nextInt(Letter.values().length);
return Letter.values()[pick];
}
しかし、もっと良い方法はありますか?これは以前に解決された問題だと思います。
Letter.values()
に内部Letter
値配列の新しいコピーを作成する必要があることです。