Hy我想创建只包含0和1个元素的简单3x3矩阵。但是,当我创建包含3x3矩阵的my matrice对象Racunalo
的2D数组5x5时,所有25个矩阵在完全相同的位置上都有0和1个元素,但我希望所有矩阵都不同。怎么做到的?如果有一些知道灵魂的好灵魂,我将非常感谢你的帮助。这是我的代码:
public class Racunalo
{
public int[,] informacija = new int[3, 3];
public void popuniInformacijuRacunala()
{
Random rand = new Random(Guid.NewGuid().GetHashCode());
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
informacija[i, j] = rand.Next(0,2);
}
}
}
}
public class Resetka
{
public static Racunalo[,] resetkaRacunala = new Racunalo[5, 5];
public void popuniInformacijeSvihRacunala()
{
Racunalo rac = new Racunalo();
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
rac.popuniInformacijuRacunala();
resetkaRacunala[i, j]=rac;
}
}
}
}
答案 0 :(得分:0)
您的问题是所有Randoms都是使用相同的种子创建的。 每个Racunalo都有相同的guid,因为它是一个对象标识符。 尝试创建一个没有参数的新随机
随机rand = new Random();
或每个随机播种不同的值(可能使用系统时钟时间)