Java函数式接口初步学习

概念

只有一个方法的接口

简单例子

package com.jie.function;

import java.util.function.Function;

public class demo01 {
    public static void main(String[] args) {
        Function function=new Function<String,String>() {
            @Override
            public String apply(String o) {
                return "调用函数式接口获得值 "+o;
            }
        };
        System.out.println(function.apply("hhh"));
    }
}

即函数式接口有一个输入类型和输出类型
同时我们可以使用lambda表达式去简化代码

        Function function= (Function<String, String>) o -> "调用函数式接口获得值 "+o;
        System.out.println(function.apply("hhh"));

Predicate接口 断定式接口

只能返回boolean值
如下面写了一个判断字符串是否为空的方法

public class demo02 {
    public static void main(String[] args) {
        Predicate predicate= (Predicate<String>) o -> o.isEmpty();
        System.out.println(predicate.test("aa"));
    }
}

消费形接口 Consumer

顾名思义消费者接口有输入值 但是没有返回值

public class Demo03 {
    public static void main(String[] args) {
        Consumer consumer=(o)->{
            System.out.println(o);
        };
        consumer.accept("ss");
    }
}

补给形接口Supplier

就是无输入有返回值 就不做代码例子了。

Java函数式接口初步学习

上一篇:SpringBoot - 通过自动装配原理,解决注入失败问题


下一篇:idea使用andord遇到的一些问题