Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpOpMp 30 of 322 menu
◀ ▶

Преобразование значения через map в Java

Метод map принимает функцию и, если значение есть, передает его внутрь. Результат снова упаковывают в Optional. Пустой контейнер остается пустым, функция не вызывается.

Так меняют тип и форму данных без if:

import java.util.Optional; Optional<String> raw = Optional.of(" java "); Optional<String> trimmed = raw.map(String::trim); Optional<Integer> len = trimmed.map(String::length); System.out.println(len.get());

Если исходная строка отсутствует, цепочка map не упадет на trim: каждый шаг просто пропускает пустоту дальше.

Функция в map не должна возвращать Optional. Для этого есть flatMap, иначе получится вложенный контейнер.

Из контейнера со строкой "10" получите контейнер с числом. Выведите число, а для пустого контейнера выведите -1.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить