Java Необязательно — после операции сопоставления возвращайте значение из необязательного объекта, только если IsPresent ⇐ JAVA
Java Необязательно — после операции сопоставления возвращайте значение из необязательного объекта, только если IsPresent
Мне нужно вернуть строковое значение после операции сопоставления, которая возвращает объект Необязательный. Операция 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(....); }
Мне нужно вернуть строковое значение после операции сопоставления, которая возвращает объект Необязательный. Операция 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(....); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Проблема условного покрытия SonarQube с оператором if для isPresent для дополнительной Java
Anonymous » » в форуме JAVA - 0 Ответы
- 37 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Союз [лист, нет] против Необязательно [лист] против Необязательно ['Liste']
Anonymous » » в форуме Python - 0 Ответы
- 23 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Союз [лист, нет] против Необязательно [лист] против Необязательно ['Liste']
Anonymous » » в форуме Python - 0 Ответы
- 22 Просмотры
-
Последнее сообщение Anonymous
-