《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.1 如何使用Optional值
1.7.1 如何使用Optional值有效地使用Optional的关键是要使用这样的方法:它在值不存在的情况下会产生一个可替代物,而只有在值存在的情况下才会使用这个值。让我们来看看第一条策略。通常,在没有任何匹配时,我们会希望使用某种默认值,可能是空字符串: 你刚刚看到了如何在不存在任何值的情况下产生相应的替代物。另一条使用可选值的策略是只有在其存在的情况下才消费该值。ifPresent方法会接....
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7 Optional类型
1.7 Optional类型 Optional对象是一种包装器对象,要么包装了类型T的对象,要么没有包装任何对象。对于第一种情况,我们称这种值为存在的。Optional类型被当作一种更安全的方式,用来替代类型T的引用,这种引用要么引用某个对象,要么为null。但是,它只有在正确使用的情况下才会更安全,下一节我们将讨论如何正确使用。
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.4 用f?latMap来构建Optional值的函数
1.7.4 用f?latMap来构建Optional值的函数 假设你有一个可以产生Optional对象的方法f,并且目标类型T具有一个可以产生Optional对象的方法g。如果它们都是普通的方法,那么你可以通过调用s.f().g()来将它们组合起来。但是这种组合没法工作,因为s.f()的类型为Optional,而不是T。因此,需要调用: 如果s.f()的值存在,那么g就可以应用到它上面。否则,就....
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.3 创建Optional值
1.7.3 创建Optional值 到目前为止,我们已经讨论了如何使用其他人创建的Optional对象。如果想要编写方法来创建Optional对象,那么有多个方法可以用于此目的,包括Optional.of(result)和Optional.empty()。例如, ofNullable方法被用来作为可能出现的null值和可选值之间的桥梁。Optional.ofNullable(obj)会在obj不....
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.2 不适合使用Optional值的方式
1.7.2 不适合使用Optional值的方式 如果没有正确地使用Optional值,那么相比较以往的得到“某物或null”的方式,你并没有得到任何好处。get方法会在Optional值存在的情况下获得其中包装的元素,或者在不存在的情况下抛出一个NoSuchElementException对象。因此, java.util.Optional 8 T get()产生这个Optional的值,或者...
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
Java开发者
Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~
+关注