十九、四大函数式接口

一、函数式接口

  1. 函数式接口的含义

    只有一个方法的接口,就是函数式接口

    如下面这些接口

    @FunctionalInterface
    public interface Runnable {
        public abstract void run();
    }
    
    @FunctionalInterface
    public interface Callable<V> {
        V call() throws Exception;
    }
    

    函数式接口的意义是为了简化编程模型

  2. Function 函数式接口

    在这里插入图片描述

    public class FunctionTest {
        public static void main(String[] args) {
    //        Function<String,String> function = new Function<String, String>() {
    //            @Override
    //            public String apply(String s) {
    //                return s;
    //            }
    //        };
    
            //lambda写法
            Function<String,String> function = (str)->{return str;};
            System.out.println(function.apply("abcd1234"));
        }
    }
    
  3. Predicate 函数式接口

    在这里插入图片描述

    public class PredicateTest {
        public static void main(String[] args) {
    //        Predicate<String> predicate = new Predicate<String>() {
    //            @Override
    //            public boolean test(String o) {
    //                return o.isEmpty();
    //            }
    //        };
    
            //Lmabda写法
            Predicate<String> predicate = (str)->{return str.isEmpty();};
    
            System.out.println(predicate.test(""));
        }
    }
    
  4. Consumer 函数式接口

在这里插入图片描述

public class ConsumerTest {
    public static void main(String[] args) {
//        Consumer<String> consumer = new Consumer<String>() {
//            @Override
//            public void accept(String s) {
//                System.out.println(s);
//            }
//        };

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

        consumer.accept("fdfsd");
    }
}
  1. Supplier 函数式接口

    在这里插入图片描述

    public class SupplierTest {
        public static void main(String[] args) {
    //        Supplier<Integer> supplier = new Supplier<Integer>() {
    //            @Override
    //            public Integer get() {
    //                return 12345;
    //            }
    //        };
    
            Supplier<Integer> supplier = ()->{return 12345;};
    
            System.out.println(supplier.get());
        }
    }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值