Size: a a a

2021 February 05

e

error_404 in pro.jvm
Alexey Genus
А зачем тогда StringUtil.isEmpty()?
я хотел написать тоже самое
источник

IA

Igor A in pro.jvm
ну проверяет на null и на всё
источник

VB

Viacheslav Blinov in pro.jvm
Igor A
ну проверяет на null и на всё
это ничем не лучше пустой строки
источник

IA

Igor A in pro.jvm
вопрос не про это как бы.
источник

IA

Igor A in pro.jvm
можете считать что там if(!null)
источник

VB

Viacheslav Blinov in pro.jvm
про это, потому-что if(null || empty) вам нужен именно поэтому
источник

IA

Igor A in pro.jvm
про optional VS IF, если возвращается 1 параметр. и .map на нем и вот эта дичь
источник

IA

Igor A in pro.jvm
Igor A
V1 или V2, юзаете ли optonal везде даже если 1 параметр?
Анонимный опрос
0%
V1
0%
V2
Проголосовало: 45
источник

AG

Alexey Genus in pro.jvm
Короче, примеры не очень понятны и выглядят как теорема Эскобара сейчас, без обид.
Здесь явно не один if, есть вложенность или early return’ы Всё не так просто, короче
источник

IA

Igor A in pro.jvm
есть 2 куска кода, цель одна.
в одном optional в другом if(null)
я готов дать больше контекста если нужно
логи вырезаны (вокруг могло бы быть много логгинга)
источник

VB

Viacheslav Blinov in pro.jvm
я так понимаю выше вы эту ошибку глотаете  еще глубже так как потом вам нужны проверки на пустой список и т.д.
источник

KK

Kruta Kruta in pro.jvm
хм, да, находил. но у меня не получается запустить всё для REST API
источник

Э

Эд in pro.jvm
Igor A
public List<Balance> loadV2() {
   String jsonBody =  executeWalletRequest();
   if (StringUtil.isEmpty(jsonBody)) {
       return Collections.emptyList();
   }
   BalanceResponse balanceResponse = JsonUtils.toObj(jsonBody, BalanceResponse.class)
   if (balanceResponse == null || balanceResponse.getAmounts() == null) {
       return Collections.emptyList();
   }
   List<Balance> result = new ArrayList<>();
   for (Amount amount : balanceResponse.getAmounts()) {
       result.add(buildUnifiedBalanceRow(balanceResponse, amount));
   }
   return result;
}
List<Balance> result = new ArrayList<>();
   for (Amount amount : balanceResponse.getAmounts()) {
       result.add(buildUnifiedBalanceRow(balanceResponse, amount));
   }
   return result;
можно было собрать по-нормальному
источник

IA

Igor A in pro.jvm
Да тут можно было stream
источник

AB

Alessio Bratenkov in pro.jvm
в 1 строчку
источник

IA

Igor A in pro.jvm
Вопрос про optional скорее везде и боязнь null
Стримы удобная штука
источник

IA

Igor A in pro.jvm
Стримы никто не ругает
источник

IA

Igor A in pro.jvm
Просто в 1м варианте код не кажется понятным
источник

E

Evgeniy ♎️ in pro.jvm
второй вариант удобней дебажить наверно
источник

SS

Shamil Sabirov in pro.jvm
Igor A
Стримы никто не ругает
почему? с ними надо уметь работать. а Optional не коррелирует со стримами. и кстате у Optional есть неприятная особенность - он не сериализуется.
источник