小编sce*_*aph的帖子

Java流API.在一行中查找匹配谓词的对象的字段.如果不存在,则返回一些默认值

例如,我们有一个带有一些字段的简单类.我们假设,我们有名为'name'和'id'的字段.我想获取具有指定id的对象的名称,如果没有这样的对象,则返回一些defaultName:

private List<MyObject> myObjects;
public String findFieldById(int id) {
    MyObject matchingObj = myObjects.stream()
                    .filter(m -> m.getId() == id)
                    .findFirst().orElse(null);

    return (matchingObj == null) ? "defaultName" : matchingObj.getName();
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在一行中轻松地对流中的 null进行检查?

java optional java-stream

5
推荐指数
1
解决办法
143
查看次数

标签 统计

java ×1

java-stream ×1

optional ×1