zoukankan      html  css  js  c++  java
  • 函数式编程

    1.函数式接口:只要是函数式接口,就可以是lambda

    public static void main(String[] args) {
            Function function1 = new Function<String,String>() {
                @Override
                public String apply(String o) {
                    return o;
                }
            };
            //和上边是等价的
            Function<String, String> function = str->{
               return str;
            };
        }

    2.断定型接口:有一个参数,返回值值能是boolean值

     public static void main(String[] args) {
            Predicate<String> predicate = new Predicate<String>() {
                @Override
                public boolean test(String str) {
                    return str.isEmpty();
                }
            };
           //和上边是等价的
            Predicate<String> predicate1 = (str)->{
                return str.isEmpty();
            };
        }

    3.消费型接口:只有输入,没有返回

     public static void main(String[] args) {
            Consumer<String> consumer = new Consumer<String>() {
                @Override
                public void accept(String o) {
                    System.out.println(o);
                }
            };
            Consumer<String> consumer2 = (str)->{
                System.out.println(str);
            };
        }

    4.供给型接口:没有参数,只有返回值

     public static void main(String[] args) {
            Supplier<Integer> supplier = new Supplier<Integer>() {
                @Override
                public Integer get() {
                    return 1024;
                }
            };
            Supplier<Integer> supplier1 = ()->{
                return 1024;
            };
        }
  • 相关阅读:
    Rocky Linux8国内镜像源
    强制缓存和协商缓存的区别
    从源码来看VUE的执行流程
    plugin
    判断数据类型的方法
    获取函数参数
    BFC
    VUE的$nextTick
    HTTP
    JavaScript创建和触发自定义事件
  • 原文地址:https://www.cnblogs.com/smallVampire/p/12937908.html
Copyright © 2011-2022 走看看