#c# #random #random-seed
#c# #Случайный #случайное начальное значение
Вопрос:
У меня есть Random
экземпляр в моем проекте C #, который я создал с помощью начального экземпляра.
private Random randomInt = new Random(1234);
Я хочу выполнить повторную загрузку того же экземпляра без создания новых Random
экземпляров.
randomInt.Reseed(5678);
Есть ли какой-либо способ добиться этого? Или я должен просто создать новый экземпляр?
Комментарии:
1. Почему вы против создания нового экземпляра? Как часто вы это делаете?
2. Во-первых, в
Reseed()
классе нетRandom
метода, во-вторых, почему бы не создать новый экземпляр, и в-третьих, почему вы все равно хотите повторно заполнить?3. Зачем вам это нужно делать? Если вам нужно повторить одни и те же значения, почему бы вам их где-нибудь не сохранить?
4. Не существует даже способа
reset
для генератора случайных чисел. итак, если вы хотите начать все сначала с того же начального значения, вам придется создать новый экземпляр. Случайный класс дешев в инициализации.5. Если вы хотите использовать тот же see, выходные числа уже известны из последнего начального значения (если вы используете то же начальное значение), вы можете сохранить результаты в оперативной памяти и использовать их, если вы не создаете новый
Random
instacne
Ответ №1:
Ни один из элементов в Random
не позволяет вам изменять начальное значение, вы должны создать новый экземпляр.