pay(Runnable {
println(“回调函数…”)
})
pay{
println(“高阶函数…”)
}
}
fun pay(block: Runnable) {
println(“before block”)
block.run()
println(“end block”)
}
fun pay(block: () -> Unit) {
println(“before block”)
block()
println(“end block”)
}
输出的结果:
before block
回调函数
end block
before block
高阶函数
end block
这看不出啥区别,当需求发生变化,我想在回调方法中加个String
类型的参数,该如何实现呢?
1.2 带参示例
// 定义接口
interface Consumer {
fun accept(way: String)
}
fun main() {
pay(Consumer {
println(“回调函 《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》无偿开源 徽信搜索公众号【编程进阶路】 数…it=$it”)
})
pay{
println(“高阶函数…it=$it”)