Java 9 中 Optional.or() 方法的重要性?
javaobject oriented programmingprogramming更新于 2025/10/21 21:00:17
在 Java 9 中,一些静态方法:stream()、or() 和 ifPresentOrElse() 已添加到 Optional<T> 类中。引入 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: TutorialsPoint Value: Not Present
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

