Kotlin If … Else

Kotlin 条件与 If..Else

Kotlin 支持数学中常见的逻辑条件:

  • 小于: a < b
  • 小于等于: a <= b
  • 大于: a > b
  • 大于等于: a >= b
  • 等于: a == b
  • 不等于: a != b

您可以使用这些条件为不同的决定执行不同的操作。

Kotlin 有以下条件:

  • 如果指定的条件为 true,则使用 if 指定要执行的代码块
  • 如果相同条件为 false,则使用 else 指定要执行的代码块
  • 如果第一个条件为 false,则使用 else if 指定要测试的新条件
  • 如果要执行许多可选代码块,则使用 when 指定要执行的代码块

备注: 与 Java 不同,if..else 可以在 Kotlin 中用作语句或表达式(为变量赋值)。请参阅页面底部的示例,以便更好地理解它。


Kotlin if

如果条件为 true,则使用 if 指定要执行的代码块。

语法
  1. if ( condition ) {
  2. // 如果条件为 true,则要执行的代码块
  3. }
请注意,if 是小写字母。如果使用大写字母(If 或 If)将产生错误。

在下面的示例中,我们测试两个值,以确定 20 是否大于 18。如果条件为 true,则打印一些文本:

实例
  1. fun main() {
  2. if (20 > 18) {
  3. println("20 大于 18")
  4. }
  5. }

我们还可以测试变量:

实例
  1. fun main() {
  2. val x = 20
  3. val y = 18
  4. if (x > y) {
  5. println("x 大于 y")
  6. }
  7. }

实例解释:

在上面的例子中,我们使用两个变量 xy 来测试 x 是否大于 y(使用 > 运算符)。因为 x 是 20,y 是 18,我们知道 20 大于 18,所以我们在屏幕上打印 "x 大于 y"。


Kotlin else

如果条件为 false,则使用 else 指定要执行的代码块。

语法
  1. if ( condition ) {
  2. // 如果条件为 true,则要执行的代码块
  3. } else {
  4. // 如果条件为 false,则要执行的代码块
  5. }
实例
  1. fun main() {
  2. val time = 20
  3. if (time < 18) {
  4. println("Good day.")
  5. } else {
  6. println("Good evening.")
  7. }
  8. }

实例解释:

在上面的例子中,时间(20)大于 18,所以条件为 false,所以我们转到 else 条件并在屏幕上打印 "Good evening"。如果时间少于 18,程序将打印 "Good day"。


Kotlin else if

如果第一个条件为 false,则使用 else if 指定新条件。

语法
  1. if ( condition1 ) {
  2. // 如果条件 1 为 true,则执行的代码块
  3. } else if ( condition2 ) {
  4. // 如果条件 1 为 false,条件 2 为 true,则要执行的代码块
  5. } else {
  6. // 如果条件 1 为 false,条件 2 为 false,则要执行的代码块
  7. }
实例
  1. fun main() {
  2. val time = 22
  3. if (time < 10) {
  4. println("Good morning.")
  5. } else if (time < 20) {
  6. println("Good day.")
  7. } else {
  8. println("Good evening.")
  9. }
  10. }

实例解释:

在上面的示例中,时间(22)大于 10,因此 第一个条件 为 false。else if 语句中的下一个条件也是 false,因此我们转到 else 条件,因为 条件1条件2 都是 false,并打印到屏幕上 "Good evening"。

然而,如果时间是 14,我们的程序将打印 "Good day"


Kotlin If..Else 表达式

在 Kotlin 中,还可以使用 if..else 语句作为表达式(为变量赋值并返回):

实例
  1. fun main() {
  2. val time = 20
  3. val greeting = if (time < 18) {
  4. "Good day."
  5. } else {
  6. "Good evening."
  7. }
  8. println(greeting)
  9. }
if 用作表达式时,还必须包含 else(必需)。

注意:当 if 只有一条语句时,可以使用大括号 {} :

实例
  1. fun main() {
  2. val time = 20
  3. val greeting = if (time < 18) "Good day." else "Good evening."
  4. println(greeting)
  5. }

提示:这个例子类似于 Java 中的 "三元运算符"(缩写 if…else)。