Jan*_*yan 6 java spring-mvc java-8 java-11
我有一个 spring 项目,我有一个布尔方法,它使用 optional 来过滤一组请求。当我尝试返回时出现错误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();
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
该
isEmpty()类型的方法未定义Optional<Request>
我正在使用这个版本的java
java.version=1.8.0_73
And*_*lko 18
Optional#isEmpty()是一个 Java 11 方法,它是 Java 8 的!Optional#isPresent().
return !request.isPresent();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4208 次 |
| 最近记录: |