Kotlin 中这个表达式的等价物是什么?
a ? b : c
这不是 Kotlin 中的有效代码。
在 Kotlin 中,if语句是表达式。所以下面的代码是等价的:
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是陈述,这可能看起来不自然,但这种感觉应该很快就会消退。