您好,登录后才能下订单哦!
Optional 类是 Java 8 引入的一个容器对象,用于表示一个值存在或不存在。它的主要方法包括:
Optional.empty()
Optional 实例。Optional.of(T value)
Optional 实例。null,会抛出 NullPointerException。Optional.ofNullable(T value)
Optional 实例,如果传入的值为 null,则返回一个空的 Optional。boolean isPresent()
true,否则返回 false。T orElse(T other)
T orElseGet(Supplier<? extends T> other)
orElse,但是默认值的计算是惰性的,只有在需要时才会调用 Supplier。T orElseThrow(Supplier<? extends X> exceptionSupplier)
Supplier 提供的异常。T get()
Optional 中的值。isPresent() 返回 false),会抛出 NoSuchElementException。Optional<T> filter(Predicate<? super T> predicate)
Optional;否则返回一个空的 Optional。Optional<U> map(Function<? super T, ? extends U> mapper)
Optional;否则返回一个空的 Optional。Optional<U> flatMap(Function<? super T, Optional<U>> mapper)
map,但是 mapper 返回的是一个 Optional 对象。如果原始 Optional 包含值,则会扁平化嵌套的 Optional。void ifPresent(Consumer<? super T> consumer)
void ifPresentOrElse(Consumer<? super T> action, Runnable emptyAction)
action;如果值不存在,则执行 emptyAction。Stream<T> stream()
Optional 中的值(如果存在)。Spliterator<T> spliterator()
Spliterator,用于并行处理 Optional 中的值。boolean equals(Object obj)
Optional 对象是否相等。int hashCode()
Optional 对象的哈希码。这些方法使得 Optional 类在处理可能为空的值时更加安全和方便,避免了空指针异常,并提供了丰富的操作接口。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。