Найти в Дзене
DEBAGanov

Java 1322. Какие существуют функциональные фичи в Java.

1322. Какие существуют функциональные фичи в Java

Java предоставляет несколько функциональных фич, которые были введены в различных версиях языка. Вот некоторые из них:

  • Лямбда-выражения: Лямбда-выражения позволяют передавать функции в качестве параметров или использовать их в качестве значений. Они представляют собой компактный способ определения анонимных функций. Пример:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
numbers.forEach(n -> System.out.println(n));

  • Функциональные интерфейсы: Функциональные интерфейсы - это интерфейсы, которые содержат только один абстрактный метод. Они используются вместе с лямбда-выражениями для создания экземпляров функциональных объектов. Пример:
@FunctionalInterface interface Converter<F, T> {
T convert(F from);
}

  • Stream API: Stream API предоставляет возможность работать с коллекциями данных в функциональном стиле. Он позволяет выполнять операции над элементами коллекции, такие как фильтрация, сортировка, отображение и другие. Пример:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream()
.filter(n -> n % 2 == 0)
.mapToInt(n -> n)
.sum();

  • Методы по умолчанию в интерфейсах: В Java 8 была добавлена возможность определения методов по умолчанию в интерфейсах. Это позволяет добавлять новые методы в существующие интерфейсы без необходимости изменения всех реализаций. Пример:
interface MyInterface {
default void myMethod() {
System.out.println("Default method");
}
}

  • Optional: Optional - это контейнер, который может содержать или не содержать значение. Он предоставляет удобные методы для работы с возможным отсутствием значения, такими как проверка наличия значения, получение значения или выполнение действия, если значение отсутствует. Пример:
Optional<String> name = Optional.ofNullable(getName());
name.ifPresent(n -> System.out.println("Name: " + n));

1606 вопрос-ответ по Java

Курс Spring Framework

Tелеграмм каналDEBAGanov

Мое резюмеDEBAGanov

Если вам понравилось, буду признателен за подписку.