kotlin - 在匿名 lambda 中返回 false
问题描述
这是我的代码。
fun isJoined(user: User): Boolean {
val member = requireNotNull(guild.getMember(user)) { return false }
return joined.contains(member)
}
当成员为空时,函数“isJoined”返回 false 还是只是匿名函数返回 false(因此该成员为 false)?
如果匿名函数返回 false,那么如何更改我的代码以返回函数“isJoined”?
解决方案
在 Kotlin 中,带有 return 的 lambdas 自动默认为从最里面的函数返回,这意味着你的整个函数将返回 false。阅读此处了解更多信息。此外,elvis 运算符提供了一种更优雅的编写方式:
val member = guild.getMember(user) ?: return false
推荐阅读
- python - 如何在 python 中使用椭圆和散点图去除某些数据集?
- c# - 如何从字符串输入中获取显示枚举值
- jquery - 更改树视图控件的呈现 html 以创建标签而不是跨度
- php - Facebook Marketing api“读取”功能弃用问题
- html - 在 div 内时,离子头和离子页脚的离子 4 高度错误
- python - 为什么我写的程序会导致 JupyterLab 中出现“IOPub data rate exceeded”问题
- python - 如何在不下载视频内容的情况下从 Kwik 网站获取 POST 标头?
- python - 当我使用 concurrent.futures 时,无法在函数中使用一对项目
- c# - 如何模拟类变量
- apache-nifi - Nifi多部分形式