版权归作者所有,转载请注明出处
Optional 类的引入很好的解决空指针异常。
Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。
T get()
如果在这个Optional中包含这个值,返回值,否则抛出异常:NoSuchElementException
boolean isPresent()
如果值存在则方法会返回true,否则返回 false。
static <T> Optional<T> of(T value)
返回一个指定非null值的Optional。
static <T> Optional<T> ofNullable(T value)
如果为非空,返回 Optional 描述的指定值,否则返回空的 Optional。
T orElse(T other)
如果存在该值,返回值, 否则返回 other。
T orElseGet(Supplier<? extends T> other)
如果存在该值,返回值, 否则触发 other,并返回 other 调用的结果。