JAVA函数套娃的骚操作

简介: JAVA函数套娃的骚操作

JAVA高级函数套娃的骚操作


在项目代码中发现一个骚操作,2个高级函数套起来使用,一开始有点迷糊,后来写了个单测跑了下明了了。

function的结果作为convertFun的入参

  @Test
  public void test(){
    processTemplate((m) -> m + " somthing", (paramA, paramB) -> paramA + paramB);
  }
  public <D> void processTemplate(Function<String, D> function, BiFunction<D, String, String> convertFun){
    D applyDInfo = function.apply("do");
    System.out.println(applyDInfo);
    String applyResult = convertFun.apply(applyDInfo, "。。。");
    System.out.println(applyResult);
  }

BiFunction<T, U, R>

/**
     * 返回一个组合函数,该函数首先将此函数应用于其输入,然后将after函数应用于结果。 如果任一函数的求值引发异常,则将其转发给组合函数的调用者。
     * 参数:
     * after – 应用此函数后要应用的函数
     * 类型参数:
     * <V> – after函数和组合函数的输出类型
     * 回报:
     * 一个组合函数,首先应用此函数,然后应用after函数
     * 抛出:
     * NullPointerException – 如果 after 为 null
*/
    default <V> BiFunction<T, U, V> andThen(Function<? super R, ? extends V> after) {
        Objects.requireNonNull(after);
        return (T t, U u) -> after.apply(apply(t, u));
    }
相关文章
|
21天前
|
Java 索引
String字符串常用函数以及示例 JAVA基础
String字符串常用函数以及示例 JAVA基础
|
23天前
|
分布式计算 DataWorks Java
DataWorks操作报错合集之在使用MaxCompute的Java SDK创建函数时,出现找不到文件资源的情况,是BUG吗
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
31 0
|
23天前
|
JavaScript 前端开发 Java
Java Script中的函数原型是什么
Java Script中的函数原型是什么
13 0
|
7月前
|
JavaScript 前端开发 Java
javascript实现像java、c#之类的sleep暂停的函数功能
javascript实现像java、c#之类的sleep暂停的函数功能
45 0
|
7月前
|
Java
java实现Beta函数
java实现Beta函数
|
8月前
|
缓存 算法 Java
在阿里云上部署和运行Java函数时
在阿里云上部署和运行Java函数时
104 2
|
21天前
|
Java Kotlin
关于Java:public函数公开其public / * package * /’参数类型
关于Java:public函数公开其public / * package * /’参数类型
17 3
|
23天前
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
109 3
|
8月前
|
存储 Java BI
如何使用 Java 程序通过 SAP Java Connector 调用 ABAP 系统的函数试读版
如何使用 Java 程序通过 SAP Java Connector 调用 ABAP 系统的函数试读版
60 0
|
23天前
|
Java
java的OutputStream.writeUTF()函数
java的OutputStream.writeUTF()函数