【发布时间】:2018-01-29 15:49:01
【问题描述】:
我正在尝试从 Optional.ispresent(callmethod) 调用私有方法,但出现编译错误。
基本上这是我要检查的条件,如果满足,则调用私有方法。
final OrderLines orderLines = readFromMockFile();
if (null != searchCriteria.getSearch() && StringUtils.isNotEmpty(searchCriteria.getSearch().getValue())) {
applySearchConfig(searchCriteria.getSearch(), orderLines);
}
为了避免空检查,我使用 Optional 重写了这段代码
Optional.ofNullable(searchCriteria.getSearch())
.map(x -> StringUtils.isNotEmpty(x.getValue()))
.ifPresent(applySearchConfig(searchCriteria.getSearch()));
但我收到编译错误Optional 类型中的 ifPresent(Consumer) 方法不适用于参数 (OrderLines)
【问题讨论】: