企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Kotlin 控制流程 > 原文: [http://zetcode.com/kotlin/controlflow/](http://zetcode.com/kotlin/controlflow/) Kotlin 控制流教程展示了如何使用`if`,`when`,`while`和`for`在 Kotlin 程序中进行控制流。 Kotlin 是在 Java 虚拟机上运行的静态类型的编程语言。 Kotlin 由 JetBrains 创建。 Kotlin 是一种面向对象的函数式编程语言。 Kotlin 被设计为一种务实,简洁,安全且可互操作的编程语言。 ## Kotlin `if`条件 `if`关键字用于创建简单的条件测试。 可以与`else`关键字结合使用。 `kotlin_if.kt` ```kt package com.zetcode fun main() { print("Enter your age: ") val s_age: String? = readLine() if (s_age!!.isEmpty()) return val age:Int = s_age.toInt() if (age > 18) { println("You can obtain a driving licence") } else { println("You cannot obtain a driving licence") } } ``` 在示例中,我们提示输入用户的年龄。 我们读取该值,将其转换为整数,然后存储在变量中。 ```kt if (age > 18) { println("You can obtain a driving licence") } else { println("You cannot obtain a driving licence") } ``` 此条件测试年龄是否大于 18 岁。 ## Kotlin 可以使用`if else if`语法创建条件的多个分支。 `ifelseif.kt` ```kt package com.zetcode fun main() { val a = 34 val b = 43 if (a == b) { println("$a and $b are equal") } else if (a < b) { println("$a is less than $b") } else { println("$b is less than $a") } } ``` 在示例中,我们使用`if else if`来确定两个值是否相等或更大或更小。 ## Kotlin `if`表达式 Kotlin 的`if`是一个表达式,即它返回一个值。 `if_expression.kt` ```kt package com.zetcode fun main() { val a = 34 val b = 43 val max = if (a > b) a else b println("max of $a and $b is $max") } ``` 该示例使用`if`表达式返回两个值中的最大值。 ## `when`表达式 Kotlin 的`when`表达式用于评估多个条件。 它是 Java `switch`语句的更强大版本。 `when`关键字将其参数顺序与所有分支匹配,直到满足某些分支条件为止。 它既可以用作表达式也可以用作语句。 `when_expression.kt` ```kt package com.zetcode import java.util.Random fun main() { val r:Int = Random().nextInt(10) - 5 when { r < 0 -> println("negative value") r == 0 -> println("zero") r > 0 -> println("positive value") } } ``` 在示例中,我们生成一个随机数。 基于随机值,我们将消息打印到控制台。 ## Kotlin `while`循环 `while`关键字用于创建循环。 它运行直到满足给定条件。 `while_loop.kt` ```kt package com.zetcode fun main() { var i:Int = 0 while(i < 10) { i++ println("i is $i") } println(i) } ``` 该示例使用`while`循环从一到十打印值。 ```kt while(i < 10) { ``` 只要`i`变量小于 10,就一直在运行`while`条件。 ## Kotlin `for`循环 使用 Kotlin 的`for`循环,我们可以创建比`while`更容易创建的循环。 `for_loop.kt` ```kt package com.zetcode fun main() { val seasons = arrayOf("Spring", "Summer", "Autumn", "Winter") for (season in seasons) { println(season) } for (i in 1..15) println(i) } ``` 在示例中,我们使用`for`关键字对字符串数组和整数范围进行迭代。 在本教程中,我们介绍了 Kotlin 中的控制流。 您可能也对相关教程感兴趣: [Kotlin 字符串教程](/kotlin/strings/), [Kotlin 数组教程](/kotlin/arrays/)或列出[所有 Kotlin 教程](/all/#kotlin)。