我有以下代码比较2个数组中的6个整数。使用LINQ可以更快地完成这项工作吗?或许Enumerable.Intersect()
?我需要它来比较两个数组中的所有6个整数。
int i = 0;
int counter = 0;
bool jackpot = false;
int[] randomArr = new int[6];
int[] chosenArr = { 1, 2, 3, 4, 5, 6 };
Random rNum = new Random();
while (!jackpot)
{
i = 0;
while (i != chosenArr.Length)
{
randomArr[i] = rNum.Next(1, 46);
i += 1;
}
i = 0;
while (i != chosenArr.Length)
{
if (!randomArr.Contains(chosenArr[i])) { break; }
i += 1;
}
if (i == chosenArr.Length) { jackpot = true; }
counter += 1;
}
编辑:我需要它来匹配两个数组中的整数,即使它们不按顺序排列。
答案 0 :(得分:1)
如果必须使用相同的顺序,则可以使用SequenceEqual
bool areEqual = chosenArr.SequenceEqual(randomArr);
如果它们可以按任何顺序排列,那么您可以使用All
bool areEqual = chosenArr.All(randomArr.Contains);