高阶函数(Higher-Order Function)就是操作其他函数的函数。
Scala 中允许使用高阶函数, 高阶函数可以使用其他函数作为参数,或者使用函数作为输出结果。
能够接受函数作为参数的函数,叫做高阶函数 (higher-order function)。可使应用程序更加健壮。
//test 就是一个高阶函数,它可以接收f: Double =>
//Double
def test(f: Double => Double, n1: Double) = {f(n1)
}
//sum 是接收一个Double,返回一个Double
def sum(d: Double): Double = {d + d
}
val res = test(sum, 6.0)
println("res=" + res)
def minusxy(x: Int) = {(y: Int) => x – y //匿名函数
}
val result3 = minusxy(3)(5)
println(result3)
说明: def minusxy(x: Int) = (y: Int) => x - y
函数名为 minusxy
该函数返回一个匿名函数
(y: Int) => x-y
说明val result3 = minusxy(3)(5)