将两个列表与 C# 组合在一起
本文关键字:组合 在一起 列表 两个 | 更新日期: 2023-09-27 18:30:44
在OCaml中,有一个函数接受两个相同大小的列表并返回一个元组列表:
val combine : 'a list -> 'b list -> ('a * 'b) list
C# 中有类似的东西吗?
我对输出的类型没有强烈的要求。它可以是元组列表,也可以是字典之类的东西。
有Enumerable.Zip
扩展方法。第二个参数告诉方法如何处理每对元素。
IEnumerable<Tuple<int, int>> pairs = a.Zip(b, Tuple.Create);
IEnumerable<int> sums = a.Zip(b, (x, y) => x + y);
如果一个集合大于另一个集合,则将忽略较大集合的其余元素。