![Java核心技术·卷Ⅱ:高级特性(原书第10版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/937/34339937/b_34339937.jpg)
上QQ阅读APP看书,第一时间看更新
1.7.2 不适合使用Optional值的方式
如果没有正确地使用Optional值,那么相比较以往的得到“某物或null”的方式,你并没有得到任何好处。
get方法会在Optional值存在的情况下获得其中包装的元素,或者在不存在的情况下抛出一个NoSuchElementException对象。因此,
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-i.jpg?sign=1738831616-2IJ8fCOEqFNdPsCQnSuFGJh2L3FaZQ0b-0-01dc100bbaa02cf2893697f3cf2fd50a)
并不比下面的方式更安全:
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-2-i.jpg?sign=1738831616-zYIPJVcd5kE2qVxT1h3CmBIjvYhW2cpK-0-63dbeff17001df9b127a6a13d94b5833)
isPresent方法会报告某个Optional<T>对象是否具有一个值。但是
![](https://epubservercos.yuewen.com/F21227/18365861501241106/epubprivate/OEBPS/Images/012-3-i.jpg?sign=1738831616-1c1wNNMkkT5ICpG7O3YjBqRS1VHLad4e-0-b9e8de8a6856795e177d1f2daac46637)
并不比下面的方式更容易处理:
java.util.Optional 8
·T get()
产生这个Optional的值,或者在该Optional为空时,抛出一个NoSuchElementException对象。
·boolean isPresent()
如果该Optional不为空,则返回true。