Sobes.tech
Back to questions
Junior — Middle
70

Какими методами можно передать функциональный интерфейс внутри объекта Optional?

Answer from AI

sobes.tech AI

В Java объект Optional может содержать функциональный интерфейс, например, Supplier, Function или Consumer. Чтобы передать функциональный интерфейс внутри Optional, можно:

  1. Создать Optional с помощью Optional.of() или Optional.ofNullable(), передав лямбда-выражение или ссылку на метод.

  2. Использовать методы Optional, которые принимают функциональные интерфейсы, например, map(), flatMap(), ifPresent().

Пример передачи функционального интерфейса в Optional:

Optional<Supplier<String>> optionalSupplier = Optional.of(() -> "Hello, World!");

optionalSupplier.ifPresent(supplier -> {
    System.out.println(supplier.get());
});

В этом примере в Optional передаётся функциональный интерфейс Supplier, который при вызове возвращает строку.