函数柯理化

package spark.demo

object MyApp {
def main(args: Array[String]): Unit = {
// 函数柯理化
val multiFunc = (a: Int, b: Int) => a * b
val multiFuncCurried = (a: Int) => ((b: Int) => a * b)

println(multiFunc(3, 5)) // 3 * 5 = 15
println(multiFuncCurried(3)(5)) // 3 * 5 = 15

val double = multiFuncCurried(2) // double = (b: Int) => 2 * b
val tripple = multiFuncCurried(3) // tripple = (b: Int) => 3 * b

println(double(5)) // 2 * 5 = 10
println(tripple(5)) // 3 * 5 = 15
}
}
posted @ 2020-09-25 16:33  初入门径  阅读(184)  评论(0)    收藏  举报