2
如何檢查Kotlin中的lambda是否爲空? 例如,我有一個像如何檢查kotlin中的lambda空虛
onError:(Throwable) -> Unit = {}
我如何不同簽名是它的默認值來身體或價值應用到這個功能呢?
如何檢查Kotlin中的lambda是否爲空? 例如,我有一個像如何檢查kotlin中的lambda空虛
onError:(Throwable) -> Unit = {}
我如何不同簽名是它的默認值來身體或價值應用到這個功能呢?
您無法測試lambda的主體是否爲空(因此它不包含源代碼),但可以通過爲該值創建一個常量並將其用作默認值來檢查lambda是否爲默認值。您還可以檢查該值是否爲默認值:
fun main(args: Array<String>) {
foo()
foo { }
foo { println("Bar") }
}
private val EMPTY: (Throwable) -> Unit = {}
fun foo(onError: (Throwable) -> Unit = EMPTY) {
if (onError === EMPTY) {
// the default value is used
} else {
// a lambda was defined - no default value used
}
}