可能重复:
LINQ 在两个列表中查找差异
我想找到两个系列之间的区别。所以我Except
在 LINQ 语句中使用。但Except
似乎只有当第一个集合比第二个集合长时才有效。例如,即使 2 个集合不同,这也不会返回任何结果。
double[] numbers1 = { 2.0, 2.1, 2.2, 2.3, 2.4, 2.5 };
double[] numbers2 = { 2.2 };
IEnumerable<double> onlyInFirstSet = numbers2.Except(numbers1);
任何人都可以确认是否是这种情况?如果是这样,我是否必须在编写查询之前检查集合长度,因为我不知道在编译时哪个集合会更大。
编辑
我想我的问题并不清楚。我不在乎哪个集合包含什么。我只想找到两个集合之间的区别。我怎样才能做到这一点?