使用lambda表达式获取list中所有对象的某个属性以及获取特定属性的某一个对象
List<User> userList = new ArrayList<>();
User u1 = new User(1,"u1",23,"test1");
User u2 = new User(2,"u2",24,"test2");
User u3 = new User(3,"u3",25,"test3");
User u4 = new User(4,"u4",26,"test4");
User u5 = new User(5,"u5",22,"test5");
User u6 = new User(6,"u6",23,"test6");
userList.add(u1);
userList.add(u2);
userList.add(u3);
userList.add(u4);
userList.add(u5);
userList.add(u6);
System.out.println("使用lambda表达式截取List中的某一个属性的值");
List<Integer> ids = userList.stream().map(e -> e.getId()).collect(Collectors.toList());
System.out.println("取出某一属性的结果值为:" + ids);
System.out.println("使用lambda表达式遍历循环List");
userList.stream().forEach(user ->{
System.out.println("user值:"+user.toString());
});
System.out.println("使用lambda表达式过滤某一个属性的值");
System.out.println("过滤前userList的值:" + userList);
userList = userList.stream().filter(user -> user.getAge() > 24).collect(Collectors.toList());
System.out.println("过滤后userList的值:" + userList);
List<Integer> ids = userList.strem.filter(user -> user.getAge==24).map(User::getId).collect(Collectors.toList());