Looking for c# Answers? Try Ask4KnowledgeBase
Looking for c# Keywords? Try Ask4Keywords

C# LanguageКлючевое слово доходности


Вступление

Когда вы используете ключевое слово yield в инструкции, вы указываете, что метод, оператор или get accessor, в котором он отображается, является итератором. Использование yield для определения итератора устраняет необходимость в явном дополнительном классе (класс, который содержит состояние для перечисления) при реализации шаблона IEnumerable и IEnumerator для пользовательского типа коллекции.

Синтаксис

  • return return [TYPE]
  • разрыв дохода

замечания

Полагая ключевое слово yield в методе с типом возвращаемого значения IEnumerable , IEnumerable<T> , IEnumerator или IEnumerator<T> сообщает компилятору сгенерировать реализацию возвращаемого типа ( IEnumerable или IEnumerator ), который при циклическом запуске метод до каждого «урожая», чтобы получить каждый результат.

Ключевое слово yield полезно, когда вы хотите вернуть «следующий» элемент теоретически неограниченной последовательности, поэтому вычисление всей последовательности заблаговременно было бы невозможно или при вычислении полной последовательности значений перед возвратом приводило бы к нежелательной паузе для пользователя ,

yield break также может быть использован для прекращения последовательности в любое время.

Поскольку ключевому слову yield требуется тип интерфейса итератора в качестве возвращаемого типа, например IEnumerable<T> , вы не можете использовать его в методе async, так как это возвращает объект Task<IEnumerable<T>> .

дальнейшее чтение

Ключевое слово доходности Связанные примеры