一条流式计算语句
包含lambda表达式,函数式接口,链式编程,stream流式计算
public class StreamTest {
public static void main(String[] args) {
List<User> userList = new ArrayList<>();
userList.add(new User(1,"a1",20));
userList.add(new User(2,"a2",24));
userList.add(new User(3,"a3",30));
//一条语句计算出
// 年龄大于22岁
// 名字首字母大写
//倒序排序
//并只输出一个
userList.stream().
filter(u->{return u.getAge() > 22;}).
map(u->{return u.getName().toUpperCase();}).
sorted((u1,u2)->{return u2.compareTo(u1);}).
limit(1).
forEach(System.out::println);
}
}
@Data
@NoArgsConstructor
@AllArgsConstructor
class User{
private int id;
private String name;
private int age;
}