四大函数式接口

四大函数式接口

Fuction 函数型接口,有一个输入参数,有一个输出参数

 

 

函数型接口:输入一个参数,输出输入的参数

复制代码
//Function 函数型接口
public class Demo01 {
    public static void main(String[] args) {
        Function function = new Function<String ,String >() {
            @Override
            public String apply(String str) {
                return str;
            }
        };
        //lambda表达式
        Function function1 = (str)->{
            return str;
        };
        System.out.println(function.apply("abc"));
        System.out.println(function1.apply("abc"));
    }
}
复制代码

 

Predicate断定型接口

 

断定型接口:有一个输入值,只能返回布尔类型

复制代码
//predicate 断定型接口
public class Demo02 {
    public static void main(String[] args) {
//        Predicate <String> predicate = new Predicate<String>() {
//            @Override
//            public boolean test(String str) {
//                return str.isEmpty();
//            }
//        };
//        System.out.println(predicate.test("abc"));
//lambda表达式
        Predicate <String>predicate1 =(str)->{
            return str.isEmpty();
        };
        System.out.println(predicate1.test(""));
    }
}
复制代码

 

Consumer 消费型接口

输入一个参数,没有返回值

 

 

复制代码
//Consumer 消费型接口
public class Demo03 {
    public static void main(String[] args) {
//        Consumer<String> Consumer = new Consumer<String>() {
//            @Override
//            public void accept(String str) {
//                System.out.println(str);
//            }
//        };
//        Consumer.accept("consumer");
         //lambda表达式
        Consumer<String> consumer = (str)->{
            System.out.println(str);
        };
        consumer.accept("consumer");
    }
}
复制代码

 

 

Supplier 供给型接口

只有返回值,没有输入参数

 

复制代码
//Supplier 供给型接口
public class Demo04 {
    public static void main(String[] args) {
//        Supplier<String> supplier = new Supplier<String>() {
//            @Override
//            public String get() {
//                return "null";
//            }
//        };
//        System.out.println(supplier.get());
        Supplier<String>supplier=()->{
          return "null";
        };
        System.out.println(supplier.get());
    }
}
复制代码

 

 
posted @   ShamUnite  阅读(70)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
点击右上角即可分享
微信分享提示