形成两个列表并集的最简单方法

2024-04-25

将两个列表(例如 A 和 B)的元素相互比较,并且仅当 A 中不存在时才将 B 中存在的元素添加到 A 中,最简单的方法是什么?

为了显示, 取列表 A = {1,2,3} 列表 B = {3,4,5}

所以在 AUB 手术之后我想要 列表 A = {1,2,3,4,5}


如果是列表,还可以使用AddRange http://msdn.microsoft.com/en-us/library/z883w3dc%28v=vs.80%29.aspx method.

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.

如果您需要新列表(并排除重复的列表),您可以使用Union http://msdn.microsoft.com/en-us/library/bb341731.aspx

  var listB = new List<int>{3, 4, 5};  
  var listA = new List<int>{1, 2, 3, 4, 5};
  var listFinal = listA.Union(listB);

如果您需要新列表(并包括重复的列表),您可以使用Concat http://msdn.microsoft.com/en-us/library/bb302894.aspx

  var listB = new List<int>{3, 4, 5};  
  var listA = new List<int>{1, 2, 3, 4, 5};
  var listFinal = listA.Concat(listB);

如果您需要常用物品,可以使用相交 https://msdn.microsoft.com/en-us/library/bb460136(v=vs.110).aspx.

var listB = new List<int>{3, 4, 5};  
var listA = new List<int>{1, 2, 3, 4};  
var listFinal = listA.Intersect(listB); //3,4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

形成两个列表并集的最简单方法 的相关文章

随机推荐