import lombok.Data;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Test1 {
public static void main(String[] args) {
Employee employee1 = new Employee();
employee1.setEid(1);
employee1.setEname("张三");
employee1.setDid(1);
Employee employee2 = new Employee();
employee2.setEid(2);
employee2.setEname("李四");
employee2.setDid(2);
List<Employee> eList = new ArrayList<>();
eList.add(employee1);
eList.add(employee2);
Dep dep1 = new Dep();
dep1.setDid(1);
dep1.setDname("销售");
Dep dep2 = new Dep();
dep2.setDid(2);
dep2.setDname("技术");
List<Dep> dList = new ArrayList<>();
dList.add(dep1);
dList.add(dep2);
eList.stream()
.map(employee -> dList.stream()
.filter(dep -> employee.getDid() == dep.getDid())
.findFirst()
.map(dep -> { employee.setDname(dep.getDname());
return employee;
}).orElse(null)
).collect(Collectors.toList());
System.out.println(eList);
}
}
@Data
class Employee {
private Integer eid;
private String ename;
private Integer did;
private String dname;
}
@Data
class Dep {
private Integer did;
private String dname;
}
lambda表达式两个list,根据员工对象中的部门id匹配部门对象的id,并赋值员工对象中的部门名称
最新推荐文章于 2023-02-01 10:55:45 发布