10.stream

Stream流

/*
题目要求:筛选出
1.Id必须是偶数
2.年龄>23
3.用户名转大写
4.用户名字母倒序
5.只输入一个用户
*
*
* */
public class Test {
    public static void main(String[] args) {
        User u1 = new User(1, "a", 21);
        User u2 = new User(2, "b", 22);
        User u3 = new User(3, "c", 23);
        User u4 = new User(4, "d", 24);
        User u5 = new User(6, "e", 25);
        List<User> list = Arrays.asList(u1, u2, u3, u4, u5);
        list.stream()
                .filter(o -> o.getId() % 2 == 0)
                .filter(o -> o.getAge() > 23)
                .peek(o -> o.setName(o.getName().toUpperCase()))
                .sorted((o1, o2) -> o2.getName().compareTo(o1.getName()))
                .limit(1)
                .forEach(System.out::println);//User(id=6, name=E, age=25)

        list.stream()
                .filter(o -> o.getId() % 2 == 0)
                .filter(o->o.getAge()>23)
                .map(o->o.getName().toUpperCase())
                .sorted(Comparator.reverseOrder())
                .limit(1)
                .forEach(System.out::println);//E
    }
}
posted @ 2021-12-08 11:30  jpy  阅读(11)  评论(0)    收藏  举报