Kotlin Academy · 课时

循环中的范围

简洁地迭代

第 3 / 4 课13 个步骤

循环中的范围 是 CoddyKit 上的免费 Kotlin Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Kotlin Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Kotlin Academy 课程共包含 4 节课。

范围驱动循环

在 Kotlin 中,范围和步进序列是驱动 for 循环的自然方式。

Kotlin 没有传统的 C 风格 for(i=0; i<n; i++);您应改为遍历范围。

基本计数循环

遍历一个包含边界的范围,即可从起点计数到终点。

变量会依次取得每个值。

fun main() {
    for (i in 1..5) {
        print(i.toString() + " ")
    }
    println()
}

使用排除上限的循环

对于从零开始的计数,until 会在上限前一个值处停止。

这是遍历已知数量元素的标准方式。

fun main() {
    for (i in 0 until 4) {
        print(i.toString() + " ")
    }
    println()
}

按索引循环

使用 indices 遍历集合中的有效位置。

它是 0 until size 的简写。

fun main() {
    val items = listOf("x", "y", "z")
    for (i in items.indices) {
        println(i.toString() + " -> " + items[i])
    }
}

倒序计数

将 downTo 与循环结合即可进行倒序计数,非常适合倒计时。

fun main() {
    for (i in 5 downTo 1) {
        print(i.toString() + " ")
    }
    println("liftoff")
}

按步长遍历

添加 step 即可使用自定义增量进行迭代,例如每隔一个值迭代一次。

fun main() {
    for (i in 0..20 step 5) {
        print(i.toString() + " ")
    }
    println()
}

遍历字符

字符范围可以让您直接遍历字母或数字。

fun main() {
    for (c in 'a'..'e') {
        print(c)
    }
    println()
}

withIndex 获取值和位置

当您同时需要索引和元素时,withIndex 会将二者配对。

您可以直接在循环头部解构这个配对结果。

fun main() {
    val items = listOf("a", "b", "c")
    for ((index, value) in items.withIndex()) {
        println(index.toString() + ": " + value)
    }
}

嵌套范围循环

嵌套遍历范围的循环可以构建网格或表格。

两个变量的每种组合都会被访问。

fun main() {
    for (row in 1..3) {
        for (col in 1..3) {
            print((row * col).toString() + "\t")
        }
        println()
    }
}

在循环中累加

范围循环非常适合累积结果,例如计算持续累加的总和。

fun main() {
    var sum = 0
    for (i in 1..100) {
        sum += i
    }
    println(sum)
}

综合运用

范围可以让循环简洁而富有表现力:

  • 使用 .. 和 until 进行计数
  • 使用 indices 获取集合位置
  • 使用 downTo 和 step 控制方向和步幅
  • 使用 withIndex 同时获取值和位置
fun main() {
    val data = listOf(10, 20, 30)
    for (i in data.indices) {
        println("item " + i + " = " + data[i])
    }
}

快速检查

请检验您对循环中范围的理解。

回顾

您已经学习了如何使用范围进行循环:

  • 使用 ..、until 和 indices 进行计数
  • 使用 downTo 和 step 控制方向和步幅
  • 使用 withIndex 同时获取索引和值

接下来,您将探索字符范围和自定义范围类型。

免费开始

用 AI 导师学习 Kotlin — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
51
课程
203

常见问题解答

「循环中的范围」课时是免费的吗?

是的 — 「循环中的范围」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Kotlin Academy 课程的其余内容,请升级到 CoddyKit PRO。 Kotlin Academy 课程共包含 4 节课。

「循环中的范围」这节课中我会学到什么?

简洁地迭代 你通过在浏览器中直接运行的动手代码来练习 Kotlin Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Kotlin Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Kotlin Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「循环中的范围」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Kotlin Academy 课中编写并运行代码吗?

能。每节 Kotlin Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 范围运算符
  2. Step 与 downTo
  3. 循环中的范围
  4. 字符范围与自定义范围
← 返回 Kotlin Academy