相关疑难解决方法(0)

可以在较大的表达式中使用可选的ifPresent()来缓解对get()的调用吗?

为了避免调用get()哪个可以抛出异常:

if (a.isPresent())
   list.add(a.get());
Run Code Online (Sandbox Code Playgroud)

我可以用以下代码替换此表达式

a.ifPresent(list::add);
Run Code Online (Sandbox Code Playgroud)

但是如果我需要执行更大的表达式,例如:

if (a.isPresent() && b && c)
   list.add(a.get());
Run Code Online (Sandbox Code Playgroud)

是否仍然可以使用lambda表单来缓解对此的调用get()

我的用例是尽可能避免get()在可能的情况下避免错过可能未经检查的异常.

java lambda optional java-8

8
推荐指数
2
解决办法
339
查看次数

标签 统计

java ×1

java-8 ×1

lambda ×1

optional ×1