本文介绍了3 IEnumerables成1个元组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有3个IEnumerables整数,我想用它制作一个Tuple数组.最好的方法是什么?如果我只有2个IEnumerables,我会使用Zip,但是在这种情况下?
I've got 3 IEnumerables of integers and I would like to make an array of Tuple out of it. What's the best approach? If I had just 2 IEnumerables I would use Zip but in this case?
推荐答案
在这种情况下,最直接使用迭代器而不是 foreach
的情况是最简单的:
This is a scenario where it is easiest to use the iterator directly, rather than 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);
// ...
}
}
这里的//...
可能是:
-
收益率返回元组
-
someList.Add(tuple);
- 或您想做的实际事情
这篇关于3 IEnumerables成1个元组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!