Kotlin中函数变量的Null安全运算符

Kotlin中函数变量的Null安全运算符,kotlin,kotlin-null-safety,Kotlin,Kotlin Null Safety,在我的Kotlin应用程序中,我有这样的可空变量 private var myCallback : (() -> Unit)? = null 是否可以使用空安全运算符?调用它?这给了我一个编译错误 myCallback?() 我发现只有当调用不为null时,才会使用这种丑陋的方法 if(myCallback != null) myCallback!!() 你可以这样称呼它: myCallback?.invoke() 函数类型变量的()语法只是invoke()运算符的语

在我的Kotlin应用程序中,我有这样的可空变量

private var myCallback : (() -> Unit)? = null
是否可以使用空安全运算符
调用它?这给了我一个编译错误

myCallback?()
我发现只有当调用不为null时,才会使用这种丑陋的方法

 if(myCallback != null)
     myCallback!!()

你可以这样称呼它:

 myCallback?.invoke()
函数类型变量的
()
语法只是
invoke()
运算符的语法糖,如果您展开它,可以使用常规的安全调用语法调用它。

的可能重复