0

假设我有 2 个集合:

1) {1, 2, 3, 5}
2){2, 5}

我想从第一个集合中删除第二个集合中出现的每个项目,所以我会得到:

{1, 3}

问题:

  1. 我如何使用JoinOP 做到这一点(使用扩展方法语法更好)?
  2. 有什么方法可以像嵌套 for/foreach 循环一样遍历两个集合?

编辑:
同时迭代两个集合您可以使用嵌套from子句:

from boy in boys
from girl in girls
select boy + "+" + girl

我第一次发现这种语法是必要的:)

4

2 回答 2

5

这可以满足您的需要

var solution = list1.Except(list2);

您可以在此处找到有关 except 的更多详细信息,但基本思想是:

此方法返回第一个不出现在第二个的元素。它也不会在第二个中返回那些没有出现在第一个的元素。

于 2013-08-31T18:55:23.517 回答
2

简单的。利用Except

var newList = list1.Except(list2).ToList();
于 2013-08-31T18:55:33.753 回答