есть ли другой способ, кроме option.ifpresent (), чтобы проверить, заполнено ли значение или нет - PullRequest
0 голосов
/ 31 марта 2020

в настоящее время xml узел в файле запроса входит, значение 01/22/2020 должно быть заполнено. у нас есть несколько новых тестовых случаев, когда они отправляют пустым, и это вызывает исключение. поэтому нужно изменить эту логику c, чтобы она также принимала ноль.

Какой еще путь существует, кроме необязательного класса? чтобы сохранить код в чистоте.

        if(!date.equalsIgnoreCase("Today")){

Спасибо, этот работал. Я просто должен был поставить еще один чек на пустые нули.

 if (date != null && !date.equalsIgnoreCase("Today"))

Привет пользователю85421.

1 Ответ

1 голос
/ 31 марта 2020

Условная проверка может быть отменена - вместо:

if(!date.equalsIgnoreCase("Today")){

use

if(!"Today".equalsIgnoreCase(date)){

«Today» не равно NULL, поэтому оно никогда не вызовет исключение NullPointerException.

Однако, поскольку требование изменилось, параметр String date должен быть изменен на Optional<String> date. Это делает код самодокументированным, без необходимости смотреть на реализацию. Но в зависимости от того, как анализируется XML, это может оказаться невозможным.

Кроме того, рассмотрите возможность использования LocalDate внутри и конвертируйте в Date, если тип возвращаемого значения не может быть изменен на LocalDate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...