java - if / else的可选方式
问题描述
我试图通过使用 Java Optional 来避免传统的 if / else 块。但是我仍然缺少对如何实现下一个要求的理解:
if (x != null)
foo1();
else
foo2();
public void foo1(){
print("X not null");
}
public void foo2(){
print("X is null");
}
谢谢
解决方案
从jdk-9你可以使用ifPresentOrElse
public void ifPresentOrElse(Consumer<? super T> action,
Runnable emptyAction)
代码
Optional.ofNullable(x).ifPresentOrElse(x->foo1(), ()->foo2());
推荐阅读
- python - Python:尝试按字母顺序对集合进行排序时出错
- vba - 如何访问由 Cell(i,j).Split 在 Powerpoint VBA 中创建的新单元格
- spring - Spring - 使用属性扩展(processResources)并在application.yml文件中使用属性引用时发生冲突
- c# - SocketException:连接尝试失败,因为连接方在一段时间后没有正确响应
- python - 在python中更新json行文件的快速方法
- angular - 无法分配给引用或变量!(与链接不同的情况)
- azure - 如何按角色定义过滤返回的资源组?
- javascript - 根据复选框的状态更新十六进制字中的位值,反之亦然
- cdi - 如何将策略模式与托管对象一起使用
- c - c 编程中标头的功能(工作)是什么?