java怎么从list中查找匹配属性

51次阅读
没有评论

共计 866 个字符,预计需要花费 3 分钟才能阅读完成。

要从一个 List 中查找匹配属性的对象,可以使用 Java Stream API 中的 filter 方法结合 Lambda 表达式来实现。以下是一个示例代码:

假设有一个名为 Person 的类,其中有一个属性名为 name:

public class Person {private String name;

    public Person(String name) {this.name = name;
    }

    public String getName() {return name;
    }
}

现在有一个 List 列表,我们想要从中查找 name 属性为 "John" 的 Person 对象:

List<Person> personList = new ArrayList<>();
personList.add(new Person("Alice"));
personList.add(new Person("Bob"));
personList.add(new Person("John"));
personList.add(new Person("Mary"));

Person result = personList.stream()
    .filter(person -> person.getName().equals("John"))
    .findFirst()
    .orElse(null);

if (result != null) {System.out.println("Found person with name John: " + result.getName());
} else {System.out.println("Person with name John not found");
}

在上面的代码中,我们使用了 Stream 的 filter 方法来筛选符合条件的对象,Lambda 表达式 person -> person.getName().equals("John") 用来判断是否 name 属性等于 "John"。然后我们使用 findFirst 方法来获取第一个匹配的对象,如果没有找到,则返回 null。最后我们输出找到的结果或者未找到的提示信息。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-04-07发表,共计866字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)