首页 > 解决方案 > 使用 java8 流 api 从列表中检索单个对象

问题描述

我有一个 列表Employee,我只想检索一个Employee具有特定名称的信息:

public static Employee getAllEmployeeDetails(String employeeName) {
    List<Employee> empList = getAllEmployeeDetails();
    Employee employee = empList.stream().filter(x -> x.equals(employeeName));
    return employee;
}

请让我知道如何过滤数据并返回单个元素。

标签: javajava-8java-stream

解决方案


这将找到第一个Employee匹配给定名称的,或者null如果没有找到:

Employee employee = empList.stream()
                           .filter(x -> x.getName().equals(employeeName))
                           .findFirst()
                           .orElse(null);

推荐阅读