Java 8 函数式接口

Java 8 函数式接口

内置的4个函数式接口


   /**
     * Java 8 内置四大核心函数式接口
     *
     * 1.Consumer: 消费性接口
     *
     * 2.Supplier: 供给型接口
     *
     * 3.Function: 函数式接口
     *
     * 4.Predicate: 断言型接口
     */
    public void test(){

    }

    //消费性接口 类似于支付接口 只负责扣除相应的钱数
    public void test1(double temp,Consumer<Double> consumer){
        consumer.accept(temp);
    }

    //供给型接口 方便产生随机数 令牌等
    public List<Integer> test2(int num , Supplier<Integer> supplier){
        List<Integer> list = new ArrayList<>();
        for(int i=0;i<num;i++){
            list.add(supplier.get());
        }

       return list;
    }

    //函数式接口 方便处理字符串等类型 的数据
    public String test3(String str, Function<String,String> function){
        return function.apply(str);
    }

    //断言型接口 方便筛选用的接口
    public List<String> test4(List<String> list, Predicate<String> predicate){
      return list.stream().filter(e-> predicate.test(e)).collect(Collectors.toList());
    }
    

你可能感兴趣的:(Java,java)