Вот два из вариаций для генерации случайных чисел в пределах range (start, end)
:Разве это случайное число поколение в эквиваленте диапазона в Java?
Метод 1:
int rand = (int)(Math.random()*(end-start)+1)+start;
Метод 2:
Random numbergenerator = new Random();
int rand=numbergenerator.nextInt(end-start)+start;
Метод 2, кажется, работает для меня.
Причина, по которой я прошу об этом: я пытался отладить мой код, и когда я изменил свое случайное int
поколение на метод 2, все, похоже, работает нормально. Метод 1 давал неожиданные результаты.
Неожиданные результаты приходят из разных сообщений: но это отвлечение на этот вопрос еще here. Здесь я заменил mehtod 1 на метод 2, и все работало нормально.
, так что вопрос в том, являются ли эти методы случайного целого поколения разными. метод 1, который был использован в этом post.
Что было бы примером, где оба они могли отличаться (если они разные)?
Каким образом результаты неожиданны? –
Случайные числа должны быть неожиданными. В этом-то и дело. – Eran
"* Что будет примерный случай, когда они оба могут отличаться (если они разные) *« Скажите нам! Вы заметили неожиданные результаты! –