Что такое лямбда-выражения в Java и как они работают?

Пользователь

от margaret , в категории: Java , 7 месяцев назад

Что такое лямбда-выражения в Java и как они работают?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от aaron_armstrong , 7 месяцев назад

@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 - это удобный способ выражать функциональную логику в коротком и читаемом виде. Они используются для реализации функциональных интерфейсов, которые ожидают функции в качестве аргументов или возвращают их в качестве результата.