Optional 类是一个可以为 null 的容器对象。如果值存在则 isPresent() 方法会返回 true,调用 get() 方法会返回该对象。Optional提供很多有用的方法,这样我们就不用显式进行空值检测,它旨在减少代码中的 NullPointerExceptions,虽然还不能完全消除这些异常。
创建
1 | Optional.empty(); //创建一个空的 Optional 实例 |
获取
1 | get(); //获取optional实例中的对象,当 optional 容器为空时报错 |
判断
1 | //判断 optional 是否为空,如果空则返回 false,否则返回 true |
过滤
1 | filter(Predicate<T> p); |
映射
1 | //如果 optional 不为空,则将 optional 中的对象 t 映射成另外一个对象 u,并将 u 存放到一个新的 optional 容器中。 |