在Java 8中,我有一个变量,它保存了一个可选的布尔值。
如果该可选项不为空,并且包含的布尔值为真,则我希望执行某个操作。
我想象中有一个类似于
如果该可选项不为空,并且包含的布尔值为真,则我希望执行某个操作。
我想象中有一个类似于
ifPresentAndTrue
的东西,这里是一个完整的示例:import java.util.Optional;
public class X {
public static void main(String[] args) {
Optional<Boolean> spouseIsMale = Optional.of(true);
spouseIsMale.ifPresentAndTrue(b -> System.out.println("There is a male spouse."));
}
}
== true
这种写法过敏。看了一下 Java 9,但好像也没有更好的解决方案:spouseIsMale.stream().filter(Function::identity).forEach(b-> System.out.println("There is a male spouse."));
- Joop Eggen