Skip to main content
 首页 » 编程设计

C#:使用 Linq 和 Lambda 获取 2 个集合之间不匹配的元素

2024年01月13日30lvdongjie

我有两个集合,比较它们并想得到不匹配的项目并放入一个新的集合中。我不想使用使用 2 个 foreach 循环的常规方法。如何使用 linq 和 lambda 表达式实现它? 例如

    int[] collection1 = new int[] { 1, 2, 3, 4, 5 }; 
    int[] collection2 = new int[] { 2, 3 }; 
    // Goal: Using Linq and Lambda Expression: the new collection3 should contain 1, 4, 5 

已编辑:抱歉,我忘了说:collection2 是 collection1 的子集,因此 collection2 中的所有元素都必须存在于 collection1 中。

请您参考如下方法:

是这样的吗?

int[] collection3 = collection1.Except(collection2).ToArray();