我有一组对象。我已经确定它有大量的物体。
Object1
Object2
Object3
Object4
Object5
Object6
我需要将集合转换为元组,就像这样
Tuple(Object1, Object2),
Tuple(Object3, Object4),
Tuple(Object5, Object6)
我一直试图为它提出一种扩展方法,但我还没弄明白。
public static IEnumerable<Tuple<T, T>> ToTuples(this IEnumerable<T> objects)
{
// what do I do here?
}
答案 0 :(得分:2)
这样的事可能吗?
public static IEnumerable<Tuple<T, T>> ToTuples<T>(this IEnumerable<T> objects)
{
IEnumerator<T> enumerator = objects.GetEnumerator();
while (enumerator.MoveNext())
{
T object1 = enumerator.Current;
if (enumerator.MoveNext())
{
yield return Tuple.Create(object1, enumerator.Current);
}
}
}