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

Неявный результат лямбды в C#

Если после => стоит одно выражение, без фигурных скобок, это тело-выражение. Результат вычисления выражения автоматически становится результатом вызова лямбды. Писать return здесь не нужно:

Func<int, int> twice = (int x) => x * 2; int result = twice(9); Console.WriteLine(result);

Тип результата задает Func: последний типовой параметр должен совпадать с тем, что дает выражение. Лямбда может возвращать bool, строку или число - достаточно выражения нужного типа после стрелки:

Func<int, bool> isEven = (int n) => n % 2 == 0; Console.WriteLine(isEven(4)); Console.WriteLine(isEven(5));

Создайте лямбду absDiff типа Func<int, int, int> с телом-выражением, которое возвращает модуль разности двух целых. Выведите результат для 3 и 10.

Создайте лямбду startsWithA типа Func<string, bool> с телом-выражением: true, если строка начинается с "a". Выведите результаты для "apple" и "banana".

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