如何使用流将对象列表转换为另一个列表对象?
下面的代码片段,是在没有 lambda 表达式的情况下实现的。
如何使用 lambda 表达式实现相同的功能?
public class Java8EmpTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Emp> empInList = Arrays.asList(new Emp(1, 100), new Emp(2, 200), new Emp(3, 300));
List<Emp> afterSalayHikeInJava7 = new ArrayList<>();
// old way
for (Emp emp : empInList) {
afterSalayHikeInJava7.add(new Emp(emp.getId(), emp.getSalary() * 100));
}
afterSalayHikeInJava7.stream()
.forEach(s -> System.out.println("Id :" + s.getId() + " Salary :" + s.getSalary()));
}
}
class Emp {
private int id;
private int salary;
public int getId() {
return id;
}
Emp(int id, int salary) {
this.id = id;
this.salary = salary;
}
public int getSalary() {
return salary;
}
}