- Java核心技术·卷Ⅱ:高级特性(原书第10版)
- (美)凯S.霍斯特曼
- 195字
- 2024-12-20 22:35:57
1.7.2 不适合使用Optional值的方式
如果没有正确地使用Optional值,那么相比较以往的得到“某物或null”的方式,你并没有得到任何好处。
get方法会在Optional值存在的情况下获得其中包装的元素,或者在不存在的情况下抛出一个NoSuchElementException对象。因此,
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-i.jpg?sign=1739553663-zpdEAFoCg43LVQmhhkSJIQ2HHYI8re8v-0-9d463c144156560a2edc57e4531eff1d)
并不比下面的方式更安全:
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-2-i.jpg?sign=1739553663-a0KyTwER0K07Ev79g1rYB0vgWOi8w3CO-0-7f6c53fe5f4bae93b684f69244b90f32)
isPresent方法会报告某个Optional<T>对象是否具有一个值。但是
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-3-i.jpg?sign=1739553663-YU0a8H9EV2YxS532gYfnvZlSALfA7iMQ-0-9f7c72b98bffde65ab9028f3f133c035)
并不比下面的方式更容易处理:
java.util.Optional 8
·T get()
产生这个Optional的值,或者在该Optional为空时,抛出一个NoSuchElementException对象。
·boolean isPresent()
如果该Optional不为空,则返回true。