java - 对对象的嵌套引用可选 ofNullable
问题描述
我需要检查我对对象的引用是否返回 null,所以我使用 Optional,如下所示:
return Optional.ofNullable(model.getSomeField().getUserName()).orElse("No name");
现在, Optional 返回我 NullPointerException 因为我有一个 null on model.getSomeField()
,如何检查传入的引用中的所有 null Optional.ofNullable
?例如,如果model.getSomeField()
为空或model.getSomeField().getUserName()
为空,那么我想运行orElse
子句。
谢谢你的帮助
解决方案
使用地图
return Optional.ofNullable(model).map(Model::getSomeField).map(Field::getUserName).orElse("No name");
推荐阅读
- asp.net - Windows Process Activation Service 错误2:系统找不到指定的文件
- ruby-on-rails - 我正在尝试完成在数据组中迭代的表
- python - Matplotlib:3D trisurf图中的ax.format_coord() - 返回(x,y,z)而不是(方位角,仰角)?
- html - 将注册表单数据卷曲到 MailChimp
- java - IntelliJ:构建 > 重建项目菜单项与 Maven 全新安装
- php - Symfony2 控制台,按位选项,使用可选的 --no 前缀?
- javascript - 检查 getElementsByTagName() 是否包含类属性 | 香草 JavaScript
- java - java 8 流中的一个简单 list.parallelStream() 似乎无法窃取?
- node.js - Google 代码实验室的 Ubuntu 配置错误
- typescript - 使用 AngularFire 和 Firestore 使用 Ng2 智能表显示嵌套对象