Niu*_*ang 2 java lambda optional
我的意思不是返回一个Optional值,我的意思是说一个方法:
public void someMethod() {
Optional<Obj> obj = someService.getObj();
if (obj.isPresent()) {
....
} else {
log.info(xxxx);
return;
}
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxx
other codes
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用Optional.ifPresent方法编写它?我的意思是,避免使用if isPresent东西。
非常感谢。
==更新:
似乎JDK9中的PresentOrElse可以做到这一点,但是JAVA8中有什么方法可以做到这一点?
我不需要此方法返回任何值,但是如果Optional不存在,我想记录一些内容。
似乎像ifPresentOrElseJava-9中的用例:
obj.ifPresentOrElse(a -> {...}, () -> {logger.info(xxxx);return; });
Run Code Online (Sandbox Code Playgroud)