У меня есть весенний проект, где у меня есть логический метод, который использует необязательный для фильтрации через набор запросов. Я получаю сообщение об ошибке, когда я пытаюсь вернуть request.isEmpty()
, я посмотрел его и, возможно, использую более старую версию Java, но есть ли альтернативный способ сказать request.isEmpty()
без необходимости обновлять мою версию Java, так как я беспокоюсь, если я обновить его, это повлияет на остальную часть моего проекта
Это мой код для метода
private boolean hasNoDaysOffOnShiftDate(List<Request> requests, ShiftParams params) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // for string
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // for localdate
// Shift start date in LocalDate
String shiftDate = (params.start).format(formatter);
LocalDate formatDateTime = LocalDate.parse(shiftDate, formatter);
System.out.println("Shift date in date format " + formatDateTime);
Optional<Request> request = requests.stream().filter(req -> req.getStatus() == Status.Accepted)
.filter(req -> isDayOffOnShiftDate(req, formatDateTime)).findAny();
return request.isEmpty();
}
Я получаю ошибку
Метод isEmpty()
не определен для типа Optional<Request>
Я использую эту версию Java
java.version = 1.8.0_73