Kotlin 中函数变量的空安全运算符
Null safety operator for function variable in Kotlin
在我的 Kotlin 应用程序中,我有这样的可为 null 的变量
private var myCallback : (() -> Unit)? = null
是否可以使用空安全运算符?
来调用?这给了我一个编译错误。
myCallback?()
如果它不为空,我只发现这种丑陋的调用方式
if(myCallback != null)
myCallback!!()
可以这样调用:
myCallback?.invoke()
函数类型变量的()
语法只是invoke()
运算符的语法糖,如果展开它可以使用常规安全调用语法调用。
在我的 Kotlin 应用程序中,我有这样的可为 null 的变量
private var myCallback : (() -> Unit)? = null
是否可以使用空安全运算符?
来调用?这给了我一个编译错误。
myCallback?()
如果它不为空,我只发现这种丑陋的调用方式
if(myCallback != null)
myCallback!!()
可以这样调用:
myCallback?.invoke()
函数类型变量的()
语法只是invoke()
运算符的语法糖,如果展开它可以使用常规安全调用语法调用。