如何传递函数在Kotlin中运行
我想要传递一个或多个函数到一个函数,但只要它是一个函数文字或一个包函数它正在工作,但是当我将其更改为特定类(成员函数)的函数时,我有以下问题
假设我有这两个功能
fun foo() { //doSomething } fun bar(function: () -> Unit) { //anotherThing! function() }
当我打电话
bar(foo())
要么
bar(::foo)
我遇到类型不匹配(必需:() – >单元,找到:单元)
注意:我不想这样解决
bar( { foo() } )
要么
bar { foo() }
至于第二个1.0 Beta候选版本,你不能传递成员函数。
我建议为KT-6947投票。
我刚刚检查过你的例子。 这对我很有用。 Kotlin版本1.0.0-beta-2423