C# 如何找出2个列表中所有不同的数据

例如LIST<INT> A {1,2,3,4,5} LIST<int> B {2,3,4,5,6}
我怎么得到1,6,是不是非得多次循环?

1次吧。
代码如下:

IList<int> A,B,C,D;//A、B就等于你上面写的,C重新new一个List<>,D=B
foreach (int a in A)
{
if (!B.Contains(a))//Contains方法就是查找a是否在B里
{
C.Add(a);
}
else
{
D.Remove(a);//存在的给他删掉,剩下的就是两者不一样的了
}
}
最后C+D就是所有两者不一样的了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-06
var c = A.Except(B).Concat(B.Except(A));
相似回答