我有 3 个整数的 IEnumerables,我想用它制作一个元组数组。最好的方法是什么?如果我只有 2 个 IEnumerable,我会使用 Zip,但在这种情况下?
最佳答案
这是直接使用迭代器最简单的场景,而不是foreach
:
using(var i1 = seq1.GetEnumerator())
using(var i2 = seq2.GetEnumerator())
using(var i3 = seq3.GetEnumerator())
{
while(i1.MoveNext() && i2.MoveNext() && i3.MoveNext())
{
var tuple = Tuple.Create(i1.Current, i2.Current, i3.Current);
// ...
}
}
这里的//...
可以是:
yield 返回元组
someList.Add(tuple);
- 或您想做的实际事情
关于c# - 3个IEnumerables到1个元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24572654/