抱歉,从一开始这可能是一个令人困惑的问题。我了解for循环在每次迭代中打印出内容的方式。但是,只有在计数器达到索引的最后一个时,才有办法在满足条件的情况下打印出内容吗?
当与if条件结合使用时,我只是束手无策,我可能会考虑一个简单的任务,并记错方法。
起初我有这样的想法。当到达索引的最后一个时,哪个当然并不总是正确的:(numbers[i] == randomNums[j] && i+1 == numbers.Length)
有什么想法吗?
使用的for循环:
for (int i = 0; i < numbers.Length; i++)
{
for (int j = 0; j < randomNums.Length; j++)
{
if (numbers[i] == randomNums[j])
{
Console.WriteLine("#######################################");
Console.WriteLine("############## B I N G O ##############");
Console.WriteLine("#######################################");
}
else
{
Console.WriteLine("Better luck next time!");
}
}
}
您可能正在寻找类似的东西:
private static void CheckBingo(int[] numbers, int[] randomNums)
{
var intersect = numbers.Intersect(randomNums).Count();
var mess = intersect > 0 ? "BINGO" : "Better luck next time!";
Console.WriteLine(mess);
}
OR
private static void CheckBingo(int[] numbers, int[] randomNums)
{
var hasMatch = numbers.Any(x => randomNums.Contains(x));
var mess = hasMatch? "BINGO" : "Better luck next time!";
Console.WriteLine(mess);
}
您将需要添加参考:
using System.Linq;