kotlin中有一段简单的代码:
fun repeat(
times: Int,
action: (Int) -> Unit // [1]
) {
for (index in 0 until times) {
action(index) // [2]
}
}
fun my(){
println("xxx")
}
fun main() {
repeat(3) { my() }
}
解释一下为什么 main() 打印:
xxx
xxx
xxx
毕竟,重复函数似乎要求最后一个 lambda 参数采用 Int 作为输入,但我的函数 my 是在没有任何参数的情况下定义的......