На этом уроке мы узнаем, как упростить создание итератора. Для этого достаточно просто написать нужный нам цикл, внутри которого воспользоватся волшебным словом yield.
Дата отправки отчёта:
13 марта 2019 г.
Задание выполнено: за
37 мин.
Чему научился:
оператор yield перечисляет значения и подставляет их куда нужно в момент перечисления
Не совсем так. Yield создает итератор и позволяет не писать отдельный класс при реализации базового интерфейса IEnumerable. Данный метод возвращает последовательность IEnumerable, элементами которой являются результаты выражений каждого из yield return. Его удобно использовать при работе с большими последовательностями (ну, к примеру, числа Фибоначчи)
Отчёт оценивали: 9480. Кирилл+120071. New programist+119022. Олег Чудновский+118681. alklokov+120545. Max+120659. no name+12146. Иван+114981. DimanDOS+18275. Tekashnik+13922. Александр+13146. Permitin Alexey+114008. Сергей +19913. vip+111353. AlliZzeN+117947. Dmitry Sinitsin+1791. Валерий Жданов+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Использованию yield. Yield позволяет избавится от реализации дополнительного класса , при использовании цикла foreach. И в определенных ситуациях оптимизировать вычисления при большом переборе значений.
Научился: На этом уроке мы наконец-то воспользовались помощью волшебного слова yield. Я еще не до конца прочувствовал эту тему. В голове возникал вопрос: "Для чего городить огород, если есть цикл foreach, который до этого всегда выручал и без использования этих интерфейсов!" Оказалось, что foreach также использует итератор, но неявно. На данный момент я понимаю так: Класс , являющийся коллекцией объектов, использует yield для реализации последовательного обращения ко всем своим элементам с начала до конца. При выполнении программы, yield создаёт класс, который содержит ряд методов по созданию счётчика перечисления, отслеживанию его переполнения, сброса при повторном обращении и тому подобное...