在使用Kotlin进行实验时,我希望将函数/lambda赋给一个变量。
这些函数/lambda都有可变(零个或多个)数量的参数,并且它们都不返回任何内容(一个Unit
)。
以下是一些有效函数/lambdas的示例:
a: Int -> Unit
a: String, b: Int -> Unit
() -> Unit
(例如,返回Unit
的零个或多个参数)
如何声明这样的变量?
我尝试过:
var test: KCallable<Unit> = { var a = 1 } // COMPILE ERROR
但是似乎() -> Unit
与KCallable<Unit>
不兼容,所以我假设我使用的接口是错误的。什么才是正确的?(Any
除外)
发布于 2018-08-01 04:47:55
您可以将Function<Unit>
用作这样的基类型。有关详细信息,请参阅documentation。
https://stackoverflow.com/questions/51621777
复制相似问题