zoukankan      html  css  js  c++  java
  • java8 四大核心函数式接口Function、Consumer、Supplier、Predicate(转载)

    Function<T, R> 

    T:入参类型,R:出参类型

    调用方法:R apply(T t); 

    定义函数示例:Function<Integer, Integer> func = p -> p * 10;    // 输出入参的10倍

    调用函数示例:func.apply(10);    // 结果100

    Consumer<T>

    T:入参类型;没有出参

    调用方法:void accept(T t);

    定义函数示例:Consumer<String> consumer= p -> System.out.println(p);    // 因为没有出参,常用于打印、发送短信等消费动作

    调用函数示例:consumer.accept("18800008888");

    Supplier<T>

    T:出参类型;没有入参

    调用方法:T get();

    定义函数示例:Supplier<Integer> supplier= () -> 100;    // 常用于业务“有条件运行”时,符合条件再调用获取结果的应用场景;运行结果须提前定义,但不运行。

    调用函数示例:supplier.get();

    Predicate<T>

    T:入参类型;出参类型是Boolean

    调用方法:boolean test(T t);

    定义函数示例:Predicate<Integer> predicate = p -> p % 2 == 0;    // 判断是否、是不是偶数

    调用函数示例:predicate.test(100);    // 运行结果true


    ---------------------
    作者:Mr.xu
    来源:CSDN
    原文:https://blog.csdn.net/a879611951/article/details/80104014
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    bzoj2124-等差子序列
    线程安全问题
    IDEA导入maven中导入net.sf.json报错的解决方法
    Java写到.txt文件,如何实现换行
    POI读取Excel如何判断行为空
    为什么JAVA对象需要实现序列化?
    支付宝老版本的支付文档
    连接池和数据源的区别是什么 [
    文件下载时格式设置
    postConstruct执行过程
  • 原文地址:https://www.cnblogs.com/bbllw/p/10315545.html
Copyright © 2011-2022 走看看