我想比较两个整数数组,然后打印出equals out。我尝试了Intersect方法:
var checkingDuplicates = boughttickets.Intersect(winningtickets).Any();
然后使用if
语句:
if (checkingDuplicates == false)
{
Console.WriteLine("Sorry, You didn't win anything");
}
else
{
Console.WriteLine(checkingDuplicates);
}
但是,输出始终使用此if
- 语句返回true。
如果我有一些拼写错误,我真的很抱歉,我的母语不是英语。
答案 0 :(得分:2)
Any
接受一系列项目并返回一个布尔值,指示该序列中是否有任何项目。
您不想知道如果该序列中有任何项目,您只想知道该序列中的所有项目是什么。这意味着不要调用Any
,你将拥有这两个数组交集的序列。
答案 1 :(得分:0)
首先我会说阅读文档。从上面的注释中,你不能在定义.tostring实现的IEnumerable上调用.toString()。 试试这个
var checkingDuplicates = boughttickets.Intersect(winningtickets);
if (!checkingDuplicates.Any())
{
Console.WriteLine("Sorry, You didn't win anything");
}
else
{
foreach(TICKET checkingDuplicate in checkingDuplicates)
{
Console.WriteLine("FETCH AND PRINT YOUR TICKET INFORMATION FROM TICKET OBJECT/CLASS");
}
}
在上面的foreach循环中,TICKET是您在上面的IEnumerable列表中使用的对象类型。