Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpGvExS 75 of 509 menu
◀ ▶

Метод-расширение последовательности в C#

Метод расширения - статический метод с первым параметром this IEnumerable<T>, который компилятор позволяет вызывать как instance-метод цепочки LINQ.

Так выносят повторяющиеся фильтры и проекции в переиспользуемые операции, не меняя исходный тип массива или списка.

Расширение обрежет последовательность при первом неположительном элементе. После -1 генератор останавливается, и число 3 в результат уже не попадает:

int[] data = { 1, 2, -1, 3 }; Console.WriteLine(string.Join(", ", data.TakeWhilePositive())); // выведет 1, 2 static class SeqExtensions { public static IEnumerable<int> TakeWhilePositive(this IEnumerable<int> src) { foreach (int item in src) { if (item <= 0) yield break; yield return item; } } }

Отфильтруйте список слов, оставив только те, что длиннее двух символов, и выведите их.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить