java - 'Optional.get()' without ' isPresent()'检查

标签 java java-8 java-stream option-type

我在 Java 中有以下搜索代码:

return getTableViewController().getMe().getColumns().stream()
    .filter($ -> Database.equalsColumnName($.getId(), columnId))
    .findFirst()
    .get();

我希望按名称查找列并返回找到的第一个。

我知道有一种情况是什么都找不到,应该处理,但是如何处理?

这就是它想要的这个脏话吗:

'Optional.get()' without 'isPresent()' check

?

如何解决?如果没有找到,我希望返回 null

更新

好的,好的,我只是没有意识到,findFirst() 返回 Optional

最佳答案

get() 替换为 orElse(null) .

关于java - 'Optional.get()' without ' isPresent()'检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38725445/

相关文章:

java - 将值传递给注入(inject)的 EJB

java - 使用 Java 8 流时的新对象实例化

java - 在 Spring Webflow 中创建新对象的首选替代方法

java - 下载大文件时出现套接字异常

java - 如何使用java 8集合并行流处理设置负载平衡?

csv - 惰性 CSV 过滤/解析 - 提高性能

java - 为什么列表不能用数组初始化,没有arrays.aslist()?

java - 使用扫描仪类更改文本文件中的特定文本(java)

java - 强制 Java 流尽早执行管道的一部分以将阻塞任务提交给线程池

parallel-processing - 来自 JPA 存储库的 Java 8 流