c# - 如何将两个 IEnumerable<T> 连接成一个新的 IEnumerable<T>?

标签 c# .net ienumerable concatenation

我有两个 IEnumerable<T> 的实例(与相同的 T )。我想要一个 IEnumerable<T> 的新实例这是两者的串联。

.NET 中是否有内置方法可以执行此操作,还是我必须自己编写?

最佳答案

是的,LINQ to Objects 支持 Enumerable.Concat :

var together = first.Concat(second);

注意:如果 firstsecond 为 null,您将收到 ArgumentNullException。为避免这种情况并像对待空集一样对待空值,请像这样使用空值合并运算符:

var together = (first ?? Enumerable.Empty<string>()).Concat(second ?? Enumerable.Empty<string>()); //amending `<string>` to the appropriate type

关于c# - 如何将两个 IEnumerable<T> 连接成一个新的 IEnumerable<T>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14164974/

相关文章:

javascript - 如何将 C# 排序字典转换为相关的 javascript 键值对数组

每个键有多个值的 C# 字典

c# - 不同系列之间的堆叠条形边框

c# - 如何判断某物是否为 IEnumerable<>?

c# - 为什么使用 foreach 迭代时不需要实现 IEnumerable

c# - 如何使用Linq从匿名IEnumerable集合中选择项目

c# - C# 中的定点数学

c# - C#汇编中的SQL汇编错误

c# - c#中的 `new object()`和 `new {}`有区别吗?

c# - 动态覆盖方法 - 或 - 在运行时调用方法时观察?