最简单的方式来形成两个列表的联合
比较两个列表元素的最简单的方法是将A和B相互比较,并且只有当A不在A中时,才将B中存在的元素添加到A中?
为了说明,取列表A = {1,2,3}列表B = {3,4,5}
所以在操作AUB之后我想要列表A = {1,2,3,4,5}
如果是列表,也可以使用AddRange方法。
var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; listA.AddRange(listB); // listA now has elements of listB also.
如果你需要新的列表(并排除重复),你可以使用联合
var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listFinal = listA.Union(listB);
如果你需要新的列表(并包括重复),你可以使用concat
var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listFinal = listA.Concat(listB);
如果你需要共同的项目,你可以使用相交 。
var listB = new List {3,4,5};
var listA = new List {1,2,3,4};
var listFinal = listA.Intersect(listB); // 3,4
最简单的方法是使用LINQ的Union
方法:
var aUb = A.Union(B).ToList();
使用LINQ的联盟
Enumerable.Union(ListA,ListB);
要么
ListA.Union(ListB);
我认为这是你真正需要做的事情:
var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listMerged = listA.Union(listB);