java中的Optional类学习

Posted dirsoen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的Optional类学习相关的知识,希望对你有一定的参考价值。

Optional实际上是个容器,它是一个装一个对象的容器。这个对象可能是个空,可能是非空。

Optional类可以使用来避免NullPointerException,避免频繁的判段对象为null的过程

1、创建Optional对象的方法:
  (1)Optional.of(xx); 只能装非空对象
  (2)Optional.ofNullable(x); 装可以是null的对象
  (3)Optional<T> empty() 直接返回一个空箱子对象
 2、如何取出Optional容器中的对象
  (1)get() 必须配合of(xx)使用,因为这里面的对象不能是null
  (2)orElse(T other) 如果Optional容器中的对象是空的,用other代替
  (3)orElseGet(Supplier<? extends T> other) 如果Optional容器中的对象是空的,用other这个供给型接口提供的对象代替
  (4)orElseThrow(Supplier<? extends X> exceptionSupplier)
3、其他操作
  Optional<T> filter(Predicate<? super T> predicate)

示例:

Optional<String> opt = Optional.ofNullable("Optional");,传入的参数可以是null的

opt.orElse("other"); //如果为null,用other替代

以上是关于java中的Optional类学习的主要内容,如果未能解决你的问题,请参考以下文章

Java中的Optional类

Java中的Optional类

java8新特性学习四(Optional类)

java8新特性学习四(Optional类)

Java新特性

java笔记Java中的Optional类