这个表达式在 Kotlin 中的等价物是什么?
a ? b : c
这不是 Kotlin 中的有效代码。
最佳答案
在 Kotlin 中,if
语句是表达式。所以下面的代码是等价的:
if (a) b else c
表达式和语句之间的区别在这里很重要。在 Java/C#/JavaScript 中,if
形成一个语句,这意味着它不会解析为一个值。更具体地说,您不能将其分配给变量。
// Valid Kotlin, but invalid Java/C#/JavaScript
var v = if (a) b else c
如果您来自一种语言,其中 if
是一个语句,这可能看起来不自然,但这种感觉很快就会消退。
https://stackoverflow.com/questions/16336500/
相关文章:
collections - Kotlin 的列表缺少 "add"、 "remove"、 map 缺少
kotlin - 在 Kotlin 中按多个字段对集合进行排序
properties - 使用 "by lazy"与 "lateinit"进行属性初始化
constants - "const"和 "val"有什么区别?
kotlin - 智能转换为 'Type' 是不可能的,因为 'variable' 是一个可变属性,
kotlin - 如何将 Kotlin 的 MutableList 初始化为空 MutableLis