在Java 9中使用Optional.ifPresentOrElse()方法的目的是什么?
Optional 类中ifPresentOrElse()方法的改进是接受两个参数Consumer 和Runnable。使用ifPresentOrElse()方法的目的是,如果Optional 包含一个值,则会对所包含的值(即 action.accept(value))调用函数action,这与ifPresent()方法一致。与ifPresent()方法的区别在于ifPresentOrElse()具有第二个参数emptyAction。如果Optional不包含任何值,则ifPresentOrElse()方法将调用emptyAction,即emptyAction.run()。
语法
public void ifPresentOrElse(Consumer<? super T> action, Runnable emptyAction)
示例
import java.util.Optional;
public class IfPresentOrElseMethodTest {
public static void main(String args[]) { Optional<Integer> optional = Optional.of(1);
optional.ifPresentOrElse(x -> System.out.println("Value: " + x), () ->
System.out.println("Not Present"));
optional = Optional.empty();
optional.ifPresentOrElse(x -> System.out.println("Value: " + x), () ->
System.out.println("Not Present"));
}
}输出结果
Value: 1 Not Present
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短