|
Генератор случайных чисел выдает одно и тоже
Вопрос:
Я создал несколько экземпляров Random но они выдают одно и тоже
что делать?
Ответ:
Потому что генератор генерирует не абсолютно случайные числа, а так называемые «псевдослучайные», то есть последовательность чисел, каждое из которых определенным образом зависит от предыдущих), а самое первое задается (в данном случае) в конструкторе класса Random . Таким образом, если создать несколько генераторов с одним и тем же параметром, они будут выдавать одинаковые последовательности. Так как вы вызываете конструктор без параметров, то в качестве начального значения используется текущее время, которое не успевает измениться между последовательными вызовами. И после этого от каждой последовательности вы берете первое число, что и дает вам все одинаковые числа. Правильным вариантом в этом случае будет не создавать каждый раз новый генератор случайных чисел, а использовать один экземпляр для всей последовательности.
Предыдущая стр.   
Оглавление   
Следующая стр.
Средняя оценка:     (2 - 1 голосов) Для оценки необходимо зарегистрироваться
Только зарегистрировавшиеся пользователи могут оставлять комментарии
|
|