using System.Collections;
using System.Collections.Generic;
public static void Main()
var numbers = (new int[]{0, 1, 2, 3, 4, 5}).AsEnumerable();
var numberEnumerator = numbers.GetEnumerator();
for (int i = 0; i < 22; i++)
var number = NextInRotation<int>(numberEnumerator);
Console.WriteLine(number);
private static T NextInRotation<T>(IEnumerator<T> enumerator)
if (!enumerator.MoveNext())
return enumerator.Current;