Если вам также нужен оригинальный Employee
, вы можете вместо этого использовать toMap
.
Map<String, Employee> employeesById = employees.stream()
.filter(e-> e.getType() == 1)
.collect(Collectors.toMap(Employee::getEmpId, Function.identity()));
Это особенно полезно, если вам нужно разрешить сотрудников позже. Если это не применимо, вышеупомянутые решения должны быть предпочтительными.
Кроме того, Set
все еще можно получить с помощью:
Set<String> employeeIds = employeesById.keySet();