«Enumerator» (Решение)
Ответ
Цикл зависнет, будут выводиться нули.
Объяснение
Для понимания этого факта необходимо вспомнить, что метод GetEnumerator
для List<T>
возвращает структуру. А значит, при каждом обращении к методу x.Items.MoveNext()
мы будем работать не с оригинальным енумератором, а с его копией, не меняя при этом внутреннее состояние исходного енумератора (а именно, его текущий элемент x.Items.Current
). Таким образом, в условии цикла ничего полезного не происходит, текущий элемент на веки останется нулём.
Last updated