Объяснение работы итератора и yield
Условие задачи
Что будет выведено в результате выполнения программы
csharpvar i = 0;
var enumerator = Fill(i);
static IEnumerator<int> Fill(int i)
{
if (i % 2 != 0)
{
yield break;
}
if (i < 3)
{
i++;
yield return i;
}
}
enumerator.MoveNext();
enumerator.MoveNext();
enumerator.MoveNext();
Console.WriteLine(enumerator.Current);