Карточка Junior Коллекции и LINQ спрашивают часто обновлено

Отложенные и немедленные операторы LINQ

Вопрос

Какие операторы LINQ выполняются сразу, а какие отложенно?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Отложенные (возвращают IEnumerable): Where, Select, SelectMany, OrderBy, GroupBy, Skip, Take, Distinct, Join. Немедленные: ToList, ToArray, ToDictionary, ToLookup, Count, Sum, Max, First, Single, Any, All, Aggregate.

Ответ

Отложенные (возвращают IEnumerable): Where, Select, SelectMany, OrderBy, GroupBy, Skip, Take, Distinct, Join. Немедленные: ToList, ToArray, ToDictionary, ToLookup, Count, Sum, Max, First, Single, Any, All, Aggregate.

Разбор

Отложенные операторы потоковые, но некоторые (OrderBy, GroupBy) при первом шаге читают весь источник целиком.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.