Есть поиск в коллекции:
for (Object dataRow : objects) {
AttributeModel attribute = document.getAttributeModels().stream()
.filter(atr -> atr.getName().equals(nameField)).findFirst().get();
....
....
}
но если элемента с таким именем нету в коллекции, вы,выбрасывает ошибку :
Exception in thread "main" java.util.NoSuchElementException: No value present
Как правильно обработать эту ошибку в стриме? И как можно сделать, чтобы при отсутствии элемента, выполнялся следующий цикл for() ?
Используйте метод Optional.get() только после проверки Optional.isPresent()
for (Object dataRow : objects) {
Optional<AttributeModel> opt = document.getAttributeModels()
.stream()
.filter(atr -> atr.getName().equals(nameField))
.findFirst();
if (opt.isPresent()){
AttributeModel attribute = opt.get();
}
....
....
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Элементы двух массивов нужно поочередно занести в 3 массивК примеру массивы A(n) и B(n) нужно записать как C(a1, b1, a2, b2, a3, b3)
Пытаюсь создать тренировочный код, позволяющий выгружать с сайта wwwflickr
Всем приветДопустим создаю уведомление обычное в сервисе с помощью NotificationCompat