Java Необязательно — после операции сопоставления возвращайте значение из необязательного объекта, только если IsPresentJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java Необязательно — после операции сопоставления возвращайте значение из необязательного объекта, только если IsPresent

Сообщение Anonymous »


Мне нужно вернуть строковое значение после операции сопоставления, которая возвращает объект Необязательный. Операция map в строке 4 возвращает объект Optional. Я хочу вернуть значение в этом дополнительном объекте, но мне не следует напрямую использовать get() для возврата значения, поскольку иногда оно может быть пустым. Я хочу проверить isPresent() или что-то подобное, прежде чем возвращать значение.

К вашему сведению: приведенный ниже код не завершен. Я застрял на строке 5 и не знаю, как получить возвращаемое значение из findFullUrl(), только если оно доступно.
private String getFinalString() { return getOptionalString(map,constant.key1).map(param -> String.format("%s/ABC", param)) .orElse( getOptionalString(карта, константа.key2) .map(tUrl -> findFullUrl(tUrl)) // Мне нужно вернуть это значение, только если оно доступно. .isPresent() // Я застрял здесь. Эта линия неполная. Возможно, придется изменить. ); } частный Необязательный getOptionalString(Map map, String key){ //Здесь идет некоторый код для получения значения с карты. return Необязательный.ofNullable(....); } частный Необязательный findFullUrl (String val) { // здесь используется некоторая логика для создания URL-адреса return Необязательный.ofNullable(....); }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»