循环遍历2个列表以获得结果

时间:2013-03-07 15:38:13

标签: linq list

我有两个清单:

myObject object1 = new myObject(id = 1, title = "object1"};
myObject object2 = new myObject(id = 2, title = "object2"};
myObject object3 = new myObject(id = 3, title = "object3"};

//List 1
List<myObject> myObjectList = new List<myObject>{object1, object2, object3};

//List 2
List<int> idList = new List<int>{2, 3,5};

现在我需要输出如下:

  1. 如果两个列表中都有id,我需要打印“A”,
  2. 如果只在list1中出现了ID,那么我需要打印“B”,
  3. ...如果id仅出现在list2中,我需要打印“C”
  4. 我可以使用linq实现这一目标吗?

1 个答案:

答案 0 :(得分:2)

我只想使用ExceptIntersect

的内置函数
  1. List1.Intersect(List2)=“A”
  2. List1.Except(List2)=“B”
  3. List2.Except(List1)=“C”
  4. 网上有很多关于你如何做到这一点的资源,作为一个例子(我没有过多考虑),请查看此链接 - Linq - Except one list with items in another

    希望这可以解决问题......