例如:fun test( x: Int = 2, y: Int = 5, z: () -> Int ): Int { return x + y + z() }如果想为参数z设置一个默认的函数该怎么写呢?
// lambda 函数的赋值 lambda = { 1+1 } ({}内可以多行, 最后一行是要返回的值) // 无参lambda默认值 fun test1(i: Int = 1, j : () -> Int = { 1 }): Int { return i + j() } // 一个参数 lambda默认值 当只有一个参数时可以省略参数声明,默认it代表参数 fun test2(i: Int = 1, j : (p: Int) -> Int = { 1+it }): Int { return i + j(i) } // 多个参数 lambda默认值 fun test3(i: Int = 1, j : (a: Int, b: Int) -> Int = { p1: Int, p2: Int -> val v3 = p1 + p2 v3 + 1 }): Int { return i + j(i, i) }