Ive получил класс Народонаселение с его конструктору:Почему я получаю случайные числа, когда я в режиме отладки?
private Individual[] m_population;
public Population() {
m_population = new Individual[POP_SIZE];
for (int i = 0; i < POP_SIZE; i++) {
m_population[i] = new Individual();
m_population[i].randGenes();
}
//some other code here
}
Внутри индивидуального класса у меня есть метод для randGenes():
Random rand2 = new Random((int) DateTime.Now.Ticks & 0x0000FFFF);
public void randGenes()
{
for (int i = 0; i < SIZE; ++i)
{
for (int j = 0; j < SIZE; j++)
{
this.setGene(i, j, rand2.Next(1));
}
}
}
Я просто нужен набор из 25 radnom 1s и 0s для каждый из 10 человек. Но я всегда получаю одинаковый набор для каждого из 10 человек, когда я больше играю с ним, я получаю только 0. Только когда я вхожу в режим отладки, я получаю поистине случайные числа. Я вижу везде, что новый случайный случай должен быть создан вне метода и/или цикла, который я сделал, поэтому я не знаю, что делать дальше?
EDIT Мой вопрос не был дубликатом этого вопроса, потому что предоставленный мне ответ не помог мне. Что помогло мне, тем не менее, был ответ, который я дал ниже.
Это решило, я попытался использовать статические случайные, но я не использовал дату-время как семя ... – Vrankela
Вы, вероятно, должны полностью опустить семантику DateTime, так как это поведение по умолчанию в любом случае. Приятно слышать, что он сейчас работает для вас :) – Warrick