全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

如何使用Optional来解决嵌套对象的判空问题?

发布时间:2022-09-14 15:50:55
发布人:wjy

  假设我们有一个像这样的类层次结构:

如何使用Optional来解决嵌套对象的判空问题1

 

  解决这种结构的深层嵌套路径是有点麻烦的。我们必须编写一堆 null 检查来确保不会导致一个 NullPointerException:

如何使用Optional来解决嵌套对象的判空问题2

 

  我们可以通过利用 Java 8 的 Optional 类型来摆脱所有这些 null 检查。map 方法接收一个 Function 类型的 lambda 表达式,并自动将每个 function 的结果包装成一个 Optional 对象。这使我们能够在一行中进行多个 map 操作。Null 检查是在底层自动处理的。

如何使用Optional来解决嵌套对象的判空问题3

 

  还有一种实现相同作用的方式就是通过利用一个 supplier 函数来解决嵌套路径的问题:

如何使用Optional来解决嵌套对象的判空问题4

相关文章

做视频创作者怎么赚钱?个人怎么靠流量赚钱?

2023-09-19

怎样投抖加不花钱?别人能看出来吗?

2023-09-19

抖店怎么拦截快递?线下结算是什么?

2023-09-19

抖店平台商户被退店还能退货吗?如何提高评分?

2023-09-19

抖店入驻收费多少?开抖店费用是多少?

2023-09-19

想做直播带货的货源哪里来?怎么找货源?

2023-09-19
在线咨询 免费试学 教程领取