我的换档有问题。我有一个整数数组。数组中总是有 3 个整数。我将数组中的这些整数传递给排序器。我想随机移动这些整数。示例:我在数组中传递整数 1、2、3。我希望它随机化并以随机顺序返回值 1、2、3。它确实会随机化,但是当我连续三次调用该函数时,它会返回相同顺序类型的整数。
示例:我调用该函数 3 次。[1, 2, 3] [4, 5, 6] [7, 8, 9] 当它排序时,它总是返回以相同顺序排列的整数。像这样 [2, 1, 3] [5, 4, 6] [8, 7, 9] 我希望它随机返回这些对,而不是按某种顺序。
这是我的代码。
private Array returnRandomInts(int[] i)
{
Random rand = new Random();
int c = 0;
int r = rand.Next(10);
int prev = 0;
int current = 0;
int temp;
while (c < r)
{
current = rand.Next(0, 3);
if (current != prev)
{
temp = i[prev];
i[prev] = i[current];
i[current] = temp;
c++;
}
}
return i;
}
我是这样称呼它的
returnRandomInts(index);
textBox1.Text = textBox1.Text + index[0].ToString() + " " + index[1].ToString() + " " + index[2].ToString() + ", ";
它们总是按一定的顺序排列。谢谢你的帮助。