57 尾随回调
最后一个函数实参可以写成尾随代码块。第一次调用通过 in 指定 Lambda 参数名,第二次使用推断出的参数名。
norm
Integer calculate(Integer input, Integer action(Integer value)) {
return action(input)
}
main() {
Integer doubled = calculate(input: 7) { value in
value * 2
}
printLine(doubled)
printLine(calculate(input: 4) { value * 3 })
}预期输出:
text
14
12动手试试:把第二次调用的输入值从 4 改为 5,预测结果。
精确规则:语言参考。