1.controller类
public static void main(String[] args) {
List<Employee> employeeList = Arrays.asList(
new Employee(101, "张三", Arrays.asList("111", "222")),
new Employee(102, "赵六", Arrays.asList("456", "124"))
new Employee(102, "马七", Arrays.asList("111", "222"))
);
Map<Integer, String> collect1 = employeeList.stream().collect(Collectors.toMap(Employee::getId, Employee::getName));
System.out.println("collect1:"+collect1);
Map<Integer, Employee> collect2 = employeeList.stream().collect(Collectors.toMap(Employee::getId, t -> t));
System.out.println("collect2:"+collect2);
Map<Integer, Employee> collect3 = employeeList.stream().collect(Collectors.toMap(Employee::getId, Function.identity()));
System.out.println("collect3:"+collect3);
}
Map<Integer, String> collect4 = employeeList.stream().collect(Collectors.toMap(Employee::getId, Employee::getName, (n1, n2) -> n1));
System.out.println("collect4:"+collect4);
Map<Integer, Employee> collect5 = employeeList.stream().collect(Collectors.toMap(Employee::getId, t -> t, (n1, n2) -> n2));
System.out.println("collect5:"+collect5);
Map<Integer, Employee> collect6 = employeeList.stream().collect(Collectors.toMap(Employee::getId, Function.identity(), (n1, n2) -> n2));
System.out.println("collect6:"+collect6);
Map<Integer, List<Employee>> collect7 = employeeList.stream().collect(Collectors.groupingBy(Employee::getId));
System.out.println("collect7:"+collect7);
employeeList.forEach(a -> System.out.println(String.join(",", a.getIds())));
2.entity类
@Data
public class Employee {
private int id;
private String name;
private List<String> ids;
public Employee(int id, String name, List<String> ids) {
this.id = id;
this.name = name;
this.ids = ids;
}
}