zoukankan      html  css  js  c++  java
  • 一道题串联lambda表达式、链式编程、函数式接口、Stream流式计算

    一道题串联lambda表达式、链式编程、函数式接口、Stream流式计算

    题目:

    题目要求:一分钟内完成此题,只能用一行代码实现! 现在有5个用户!筛选: 
    1、ID 必须是偶数 
    2、年龄必须大于23岁 
    3、用户名转为大写字母 
    4、用户名字母倒着排序 
    5、只输出一个用户! 
    用户类:
    public class User {
        private int id;
        private String name;
        private int age;
    }
    

    题解:

    import javax.crypto.spec.PSource;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    import java.util.function.Function;
    import java.util.function.Predicate;
    
    public class Test {
        public static void main(String[] args) {
            /*** 题目要求:一分钟内完成此题,只能用一行代码实现!
             *  现在有5个用户!筛选:
             *  1、ID 必须是偶数
             *  2、年龄必须大于23岁
             *  3、用户名转为大写字母
             *  4、用户名字母倒着排序
             *  5、只输出一个用户!
             *  */
            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(u->{return u.getId()%2==0;})
                    .filter(u->{return u.getAge()>23;})
                    .map(u->{return u.getName().toUpperCase();})
                    .sorted((uu1,uu2)->{return uu1.compareTo(uu2);})
                    .limit(1)
                    .forEach(System.out::println);
        }
    }
    

    image-20210421105903238

  • 相关阅读:
    Android开发:系统自动实现开机启动
    Android高手进阶教程【转】
    android 各种控件颜色值
    Android开发博客国内最大的移动开发博客eoe移动开发者社区
    异步图片加载工具类
    Android中shape的使用
    Android的asset/res资源框架结构
    winddows 运行指令 (2)
    使用activeMQ实现jms
    ActiveMQ在C#中的应用
  • 原文地址:https://www.cnblogs.com/sinlearn/p/14684361.html
Copyright © 2011-2022 走看看