java.util.Optional
是 Java 8 引入的一个容器类,用于表示可能包含或不包含非空值的对象。它的设计初衷是为了减少程序中的空指针异常(NullPointerException),并使代码更加简洁和易读。
Optional
类的介绍
1. 特点
- 避免显式的 null 检查:使用
Optional
可以避免显式的 null 检查,从而减少空指针异常。 - 提供有意义的返回值:当一个方法可能不返回有效值时,可以使用
Optional
作为返回类型,而不是返回 null。 - 更好的代码可读性:通过一组流式 API 方法,可以使代码更具可读性和表达力。
2. 主要方法
empty()
: 返回一个空的Optional
实例。of(T value)
: 返回一个包含指定值的Optional
,如果值为 null 则抛出NullPointerException
。ofNullable(T value)
: 返回一个包含指定值的Optional
,如果值为 null 则返回一个空的Optional
。isPresent()
: 如果值存在则返回 true,否则返回 false。ifPresent(Consumer<? super T> consumer)
: 如果值存在则执行指定的消费