在列表中查找项目使用java中的流

时间:2017-02-25 07:48:57

标签: java java-8 java-stream

我有一份人员名单。每个人都有姓名和年龄。

我想使用一个流来查找此人是否已经在列表中。

public void process (Person pItem) {
    Person curPerson = persons.stream().filter(x -> x.name.equals(pItem.name)).collect(.. ???)
}

2 个答案:

答案 0 :(得分:3)

Person curPerson= persons.stream().filter(x -> x.name.equals(pItem.name)).findFirst().orElse(null);

答案 1 :(得分:2)

您可以使用Stream.anyMatch

public boolean process (Person pItem) {
    return persons.stream().anyMatch(x -> x.name.equals(pItem.name));
}