05 四大函数式接口

四大函数式接口

函数式接口

简化编程模型,在新版本的框架底层大量应用

foreach(消费者类的函数式接口)

四大函数式接口

消费型接口 Consumer void accept(T t)

供给型接口 Supplier T get()

函数型接口 Function<T,R> R apply(T t)

断定型接口 predicate boolean test(T t)

函数型接口 Function<T,R> R apply(T t) 传入参数T 返回R

//        Function<String,String> function = new Function<String, String>() {
//            @Override
//            public String apply(String s) {
//                return s;
//            }
//        };
//        
        
       Function<String,String> function = str -> {return str;};

	function.apply("asd");

断定型接口 predicate boolean test(T t)

有一个输入参数,返回值只能是 布尔值

//        Predicate<String> predicate = new Predicate<String>() {
//            @Override
//            public boolean test(String str) {
//                return str.isEmpty();
//            }
//        };

        Predicate<String> predicate = str -> {return str.isEmpty();};

        System.out.println(predicate.test(""));

消费型接口 Consumer void accept(T t)

只有输入,没有返回值

//        Consumer<String> consumer = new Consumer<String>() {
//            @Override
//            public void accept(String str) {
//                System.out.println(str);
//            }
//        };

        Consumer<String> consumer = str -> {System.out.println(str);};

        consumer.accept("123");
    }

供给型接口 Supplier T get()

没有参数只有返回值

//        Supplier<Integer> supplier = new Supplier<Integer>() {
//            @Override
//            public Integer get() {
//                return 1024;
//            }
//        };

        Supplier<Integer> supplier = ()->{reutrn 1024;};
        supplier.get();


posted @ 2021-04-28 21:31  flypiggg  阅读(119)  评论(0)    收藏  举报