Если у меня есть перечисление вроде этого:Java: выберите случайное значение из перечисления?
public enum Letter {
A,
B,
C,
//...
}
Каков наилучший способ выбрать один случайно? Это не должно быть качество продукции пуленепробиваемое, но довольно ровное распределение было бы неплохо.
я мог бы сделать что-то вроде этого
private Letter randomLetter() {
int pick = new Random().nextInt(Letter.values().length);
return Letter.values()[pick];
}
Но есть лучший путь? Я чувствую, что это то, что было решено раньше.
что вы думаете, не так с вашим решением? Это выглядит очень хорошо для меня. –
@GregS - проблема в том, что каждый вызов 'Letter.values ()' должен создать новую копию внутреннего массива значений 'Letter'. –
Дарн, я просто хотел задать тот же вопрос. nice one (+1) –