在java 9中,optional8742468051c85b06f0a0af9e3e506b5c类中添加了一些静态方法:stream()、or()和ifpresentorelse()。引入optional类解决了空指针异常的问题。
optional.or()方法返回一个optional,描述如果存在值则返回该值,否则返回由提供函数生成的optional。
语法public optional<t> or(supplier<? extends optional<? extends t>> supplier)
示例import java.util.optional;import java.util.function.supplier;public class optionalortest { public static void main(string args[]) { optional<string> optional = optional.of("tutorialspoint"); supplier<optional<string>> supplierstring = () -> optional.of("not present"); optional = optional.or(supplierstring); optional.ifpresent(x -> system.out.println("value: " + x)); optional = optional.empty(); optional = optional.or(supplierstring); optional.ifpresent(x -> system.out.println("value: " + x)); }}
输出value: tutorialspointvalue: not present
以上就是java 9中optional.or()方法的重要性是什么?的详细内容。