Java程序使用Lambda表达式使用现有列表中的值创建新列表

要使用Lambda表达式使用现有列表中的值创建新列表,下面是一个示例。

在这里,我们显示员工的姓名。因此,我们也创建了一个Employee类-

List<Employee>emp = Arrays.asList(new Employee("Jack", 29, "South"), new Employee("Tom", 24, "North"), new Employee("Harry", 35, "West"),new Employee("Katie", 32, "East"));

使用Lambda通过Lambda Expressions从现有列表中创建新列表-

List<String>res = emp.stream().map(u ->u.displayEmpName()).collect(Collectors.toList());

让我们看完整的例子-

示例

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;
public class Demo {
   public static void main(String args[]) {
      List<Employee>emp = Arrays.asList(new Employee("Jack", 29, "South"), new Employee("Tom", 24, "North"),
          new Employee("Harry", 35, "West"),new Employee("Katie", 32, "East"));
      List<String>res = emp.stream().map(u ->u.displayEmpName()).collect(Collectors.toList());
      System.out.println("Employee Names = "+res);
   }
}
class Employee {
   private String emp_name;
   private int emp_age;
   private String emp_zone;
   public Employee(String emp_name, int emp_age, String emp_zone) {
      this.emp_name = emp_name;
      this.emp_age = emp_age;
      this.emp_zone = emp_zone;
   }
   public String displayEmpName() {
      return this.emp_name;
   }
}

输出结果

Employee Names = [Jack, Tom, Harry, Katie]