gpt4 book ai didi

kotlin - 检查 Kotlin 中的函数是否为空

转载 作者:行者123 更新时间:2023-12-02 12:44:01 25 4
gpt4 key购买 nike

我有一些回调,其参数定义如下:

val getMoreFunction : (() -> FSDirResult)? = 空

可为空,因为我需要知道函数是否实际定义。但是我觉得不好。我宁愿将 {} 而不是 null 传递给我的回调。那么有没有办法判断是否传递了空函数呢?

最佳答案

理想情况下,您应该有一个可以调用的默认参数,即:

fun saneDefault(getMoreFunction: (() -> String) = { "" }): Boolean {
val result = getMoreFunction()
return result.isEmpty()
}

但是,如果您真的,真的,真的需要知道参数是否已传递,您可以像这样存储默认参数值:

private val DEFAULT = { throw UnsupportedOperationException("this shouldn't be called") }

fun isDefaultPassed(getMoreFunction: (() -> String) = DEFAULT): Boolean {
if(getMoreFunction == DEFAULT){
return true
}
return false
}

关于kotlin - 检查 Kotlin 中的函数是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com