美文网首页
9.函数复合

9.函数复合

作者: 学吉他的袁先生 | 来源:发表于2020-07-28 17:09 被阅读0次

定义:一种数学概念 f(g(x))

val add5 = {i: Int -> i + 5} // g(x)
val multiplyBy2 = {i : Int -> i * 2} // f(x)

fun main() {
    val multiplyBy21 = multiplyBy2(add5(8))
    println(multiplyBy21)
}

利用扩展函数以及中缀表达式可以这样子改造

val add5 = {i: Int -> i + 5} // g(x)
val multiplyBy2 = {i : Int -> i * 2} // f(x)

infix fun <P1, P2, R> Function1<P1, P2>.andThen(function: Function1<P2, R>): Function1<P1,R>{
    return fun(p1: P1): R{
        return function.invoke(this.invoke(p1))
    }
}

fun main() {
    val multiplyBy21 = multiplyBy2(add5(8))
    println(multiplyBy21)
    val add5AndMultiplyBy2 = add5 andThen multiplyBy2
    add5AndMultiplyBy2(8)
}

打印
26
26

相关文章

  • 9.函数复合

    定义:一种数学概念 f(g(x)) 利用扩展函数以及中缀表达式可以这样子改造 打印2626

  • 复合函数

    复合函数的相关概念 复合函数的性质 复合函数的求导

  • Lambda表达式

    函数式接口 复合Lambda表达式 比较器复合 谓词复合 函数复合

  • 6-3_1 复合求导

    一、 多元函数复合求导 1 复合函数的中间变量为一元函数的情形 2 复合函数的中间变量为多元函数的情形 3 复合函...

  • 复合函数的单调性

    参考自:复合函数的概念及复合函数的单调性 - 豆丁网

  • 9. 复合语句

    复合语句是一个由括号括起来的语句列表。有许多种常见的括号格式化方式。如果你有一个本地标准,那请你与本地标准保持一致...

  • 复合 Lambda 表达式的有用方法

    比较器复合 逆序 比较器链 谓词复合 函数复合 andThen方法会返回一个函数,它先对输入应用一个给定函数,再对...

  • 复合函数

    01、复合函数定义 设y=f(u),u=g(x)变量x与y之间通过变量u形成的一种函数关系,记为y=f(u)=f[...

  • 复合函数

    讲解对象:复合函数作者:融水公子 rsgz

  • 数据抽象

    数据抽象 复合简单数据形成复合数据,复合数据可以提高程序的模块化。数据抽象类似于函数抽象,函数抽象将函数的实现细节...

网友评论

      本文标题:9.函数复合

      本文链接:https://www.haomeiwen.com/subject/lyxqrktx.html