java - 如何在 java 8 中使用 Optionals 编写代码
问题描述
我有这样的代码。如何更正确地重写它?
Optional<String> getNameBySiiPriorityInfo(Optional<SiiPriorityInfo> siiPriorityInfo){
return siiPriorityInfo.isPresent() ? Optional.ofNullable(siiPriorityInfo.get().getName()) : Optional.empty();
}
解决方案
如果您有一个可选项,并且希望通过对可选项内部的对象执行操作来获得另一个可选项,请使用map
.
return siiPriorityInfo.map(SiiPriorityInfo::getName);
推荐阅读
- android - 尝试在应用程序购买中测试时,您请求的项目无法购买
- php - 数组中的值重复导致将几行插入数据库
- unix - 如何在 unix 上解决安全通道的自签名证书问题
- android-webview - 如何在没有亲戚的情况下在 Eclipse 中嵌入 aparat 视频?
- asp.net - 我有一个混合(部分 ASP,部分 ASPX)网络应用程序。如果用户在 ASPX 端花费的时间过长,他们就会在 ASP 端注销。我怎样才能解决这个问题?
- c# - 在 .NET Core Web API 中缓存大数据
- java - 使用 Java 连接到没有 Kerberos 的 localhost 独立 HBase 时,“MasterNotRunningException 无法找到任何 Kerberos tgt”
- c++ - 向未排序的地图添加相同的键
- elasticsearch - Elasticsearch,理解完成建议
- java - 如何在android studio中使用其他类的方法