【发布时间】:2016-07-04 06:44:56
【问题描述】:
我有一个类 Population 及其构造函数:
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
}
在 Individual 类中,我有 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));
}
}
}
我只需要为 10 个人中的每一个提供一组 25 个 radnom 1 和 0。但是我总是为 10 个人中的每一个人得到相同的集合,当我更加摆弄它时,我只得到 0。只有当我进入调试模式时,我才能得到真正的随机数。 我到处都看到新的随机数应该在方法和/或循环之外创建,我这样做了所以我不知道下一步该怎么做?
编辑我的问题不是那个问题的重复,因为那里提供的答案对我没有帮助。然而,对我有帮助的是我在下面给出的答案。
【问题讨论】: