假设两个List 它们的内容是相同类型的,如下:
List<ItemModel> list1 = new List<ItemModel>();
List<ItemModel> list2= new List<ItemModel>();
//然后可以使用下面方法实现合并
list1 = list1.Concat(list2).ToList();
lebang2020.cn
几种合并方式的对比
- Concat + ToList:返回新集合,原集合不变,适合只读合并。
- AddRange:把第二个集合追加到第一个集合,会修改原集合。
- Union:合并并去重,依赖元素的相等比较。
- Concat 与 AddRange 性能接近,关键区别在于"是否修改原集合"。
另外,用 ToList().ForEach(...) 代替 foreach 并不更清晰,也不便于断点调试。