【2023】Kotlin教程
第二篇 面向对象与函数式编程
第13章 函数式编程基石——高阶函数和Lambda表达式
函数式编程思想虽然与面向对象一样立即悠久,但是支持函数式编程的计算机语言不过是近几年的事情。这些语言有Swift、Python、Java 8和C++ 11等,作为新生的语言Kotlin也支持函数式编程。
13.3 Lambda表达式
Lambda表达式是一种匿名函数,可以作为表达式、函数参数和函数返回值使用,Lambda表达式的运算结果是一个函数。
13.3.2 使用Lambda表达式
Lambda表达式也是函数类型,可以声明变量,也可以作为其他函数的参数或者返回值使用。
之前我们已经写过了作为返回值的示例:
下面介绍一个Lambda表达式作为参数使用示例,示例代码如下:
// 打印计算结果函数
fun calculatePrint(n1: Int, n2: Int, opr: Char, funN: (Int, Int) -> Int) {
println("$n1 $opr $n2 = ${
funN(n1, n2)}")
}
fun main() {
calculatePrint(10, 5, '+', {
a: Int, b: Int -> a + b })
calculatePrint(10, 5, '-', funN = {
a: Int, b: Int -> a - b })
}
没毛病。