Kotlin:Kotlin流程控制:循环与分支
Kotlin流程控制:循环与分支
1. 流程控制基础
1.1 分支结构:if和when
在Kotlin中,if
和when
是用于实现条件分支的两个主要关键字。它们不仅用于控制程序的流程,还可以作为表达式使用,这在其他语言中并不常见。
if语句
// 使用if语句进行条件判断
fun main() {
val number = 5
val result = if (number > 0) {
"正数"
} else {
"非正数"
}
println(result)
}
在上述代码中,if
语句用于判断number
是否大于0。如果条件为真,result
将被赋值为字符串"正数";否则,赋值为"非正数"。if
语句的执行结果可以被赋值给一个变量,这使得它在逻辑上更像一个表达式。
when语句
when
语句在Kotlin中提供了一种更强大的分支逻辑,可以替代多个if
语句或传统的switch
语句。它支持多种条件表达式,包括变量的值、范围、类型检查等。
// 使用when语句进行多条件分支
fun main() {
val number = 5
val result = when (number) {
1 -> "一"
2 -> "二"
in 3..5 -> "三到五"
!in 1..10 -> "不在一到十之间"
else -> "其他"
}
println(result)
}
在这个例子中,when
语句检查number
的值。如果number
等于1,结果是"一";如果等于2,结果是"二";如果在3到5的范围内,结果是"三到五";如果不在1到10的范围内,结果是"不在一到十之间";否则,结果是"其他"。
1.2 循环结构:for和while
Kotlin提供了for
和while
两种循环结构,用于重复执行代码块直到满足特定条件。
for循环
for
循环在Kotlin中可以用于遍历任何可迭代对象,如数组、列表、范围等。
// 使用for循环遍历数组
fun main() {
val numbers = intArrayOf(1, 2, 3, 4, 5)
for (number in numbers) {
println(number)
}
}
这段代码使用for
循环遍历numbers
数组,并打印每个元素。
while循环
while
循环则在条件为真时重复执行代码块。
// 使用while循环
fun main() {
var number = 1
while (number <= 5) {
println(number)
number++
}
}
在这个例子中,while
循环会持续执行,直到number
大于5。
1.3 标签与循环控制语句
在Kotlin中,可以使用标签来控制循环的流程,这在处理嵌套循环时特别有用。
标签与break
// 使用标签和break语句
fun main() {
outer@ for (i in 1..3) {
for (j in 1..3) {
if (i == 2 && j == 2) {
break@outer // 跳出外层循环
}
println(