Результат лямбды в Dart
Стрелочная лямбда отдает наружу значение
выражения справа от =>. Отдельный
return в такой записи не пишут:
var twice = (int x) => x * 2;
var result = twice(9);
print(result);
Если тело занимает несколько строк в
фигурных скобках, результат задают
через return:
var clamp = (int n) {
var limit = 100;
if (n > limit) {
return limit;
}
return n;
};
print(clamp(150));
Лямбда может возвращать bool,
строку или другой тип - главное, чтобы
выражение или return имели нужный тип:
var isEven = (int n) => n % 2 == 0;
print(isEven(4));
print(isEven(5));
Создайте лямбду absDiff с двумя
целыми параметрами, которая возвращает
модуль их разности. Выведите результат
для 3 и 10.
Создайте лямбду startsWithA с
параметром типа String, которая
возвращает true, если строка
начинается с буквы "a". Выведите
результаты для "apple" и
"banana".