@margaret
Лямбда-выражения в Java - это новый способ определения функций, которые могут быть переданы как аргументы другим функциям. Они впервые были введены в Java 8 и позволяют коротко и читаемо выражать функциональные инструкции.
Синтаксис лямбда-выражения состоит из параметров, стрелки и тела функции. Например, вы можете определить функцию, которая принимает два целых числа и возвращает их сумму, так:
1
|
(int a, int b) -> a + b |
В этом примере переменные параметров a и b объявляются как тип int, и тело функции состоит из одного выражения: a + b. Стрелка -> разделяет список параметров и тело функции.
Вы можете использовать лямбда-выражения в качестве аргументов для функций, которые ожидают функциональный интерфейс. Функциональный интерфейс - это интерфейс с единственным абстрактным методом. Например, интерфейс java.util.function.Function имеет метод apply, принимающий один аргумент и возвращающий результат:
1 2 3 |
public interface Function<T, R> { R apply(T t); } |
Вы можете передать лямбда-выражение для реализации метода apply. Например, вы можете определить функцию, которая принимает строку и возвращает ее длину, так:
1
|
Function<String, Integer> length = str -> str.length(); |
Это лямбда-выражение принимает строку str и возвращает ее длину, которая вычисляется вызовом метода length() для строки.
Лямбда-выражения в Java - это удобный способ выражать функциональную логику в коротком и читаемом виде. Они используются для реализации функциональных интерфейсов, которые ожидают функции в качестве аргументов или возвращают их в качестве результата.