首页 > 编程语言 >Android学习(四)-Kotlin编程语言-for循环

Android学习(四)-Kotlin编程语言-for循环

时间:2024-12-19 13:58:09浏览次数:7  
标签:10 遍历 编程语言 Kotlin 循环 区间 Android main

在编程中,熟悉 Java 的开发者应该知道,Java 循环语句:for 循环。Kotlin 也提供循环语句,但 for 循环在 Kotlin 中进行了大幅改进,重点学习 Kotlin 中增强的 for-in 循环。

Kotlin 中的 for-in 循环
区间概念

在 Kotlin 中,区间是一种非常有用的特性。你可以使用以下语法来创建一个区间:

val range = 0..10

这里的 0..10 表示从 0 到 10 的闭区间,即包含 0 和 10。用数学符号表示为 [0, 10]

  • 双端闭区间:使用 .. 创建,例如 0..10
  • 左闭右开区间:使用 until 创建,例如 0 until 10,表示 [0, 10)
遍历区间

我们可以使用 for-in 循环来遍历区间中的每个元素。例如,在 main 函数中编写如下代码:

fun main() {
    for (i in 0..10) {
        println(i)
    }
}

这段代码会遍历从 0 到 10 的所有整数,并逐个打印出来。

左闭右开区间

有时候,我们需要使用左闭右开区间,特别是在处理数组下标时。可以使用 until 关键字来创建这样的区间:

fun main() {
    for (i in 0 until 10) {
        println(i)
    }
}

这里 0 until 10 表示从 0 到 9 的区间,不会包括 10。

步长控制

默认情况下,for-in 循环每次递增 1。如果你需要改变步长,可以使用 step 关键字:

fun main() {
    for (i in 0 until 10 step 2) {
        println(i)
    }
}

上述代码会从 0 开始,每次递增 2,输出结果为 0, 2, 4, 6, 8。

降序遍历

如果你想创建一个降序区间,可以使用 downTo 关键字:

fun main() {
    for (i in 10 downTo 1) {
        println(i)
    }
}

这段代码会从 10 开始,每次递减 1,输出结果为 10, 9, 8, ..., 1。

结合 step 使用

降序区间也可以结合 step 关键字使用,以实现更复杂的循环逻辑:

fun main() {
    for (i in 10 downTo 1 step 2) {
        println(i)
    }
}

这段代码会从 10 开始,每次递减 2,输出结果为 10, 8, 6, 4, 2。

遍历数组和集合

除了遍历区间,for-in 循环还可以用来遍历数组和集合。例如:

fun main() {
    val names = arrayOf("Tom", "Jim", "Jack", "Lily")
    for (name in names) {
        println(name)
    }
}

这段代码会遍历数组 names 中的每个元素,并逐个打印出来。

总结

Kotlin 的 for-in 循环虽然不如传统的 for-i 循环灵活,但更加简洁易用,并且能够覆盖大部分常见的循环场景。通过区间、步长和降序等功能,for-in 循环可以实现各种复杂的循环逻辑。希望这些内容能帮助你更好地理解和使用 Kotlin 中的循环语句!


 

标签:10,遍历,编程语言,Kotlin,循环,区间,Android,main
From: https://blog.csdn.net/2301_81364903/article/details/144584443

相关文章

  • 使用 Kotlin 实现验证码识别
    步骤安装Kotlin环境如果尚未安装Kotlin,可以通过以下方式安装:对于Android开发,可以通过安装AndroidStudio。对于其他平台,可以按照Kotlin官方文档中的指引进行安装。安装TesseractOCR在Kotlin中使用TesseractOCR,通常可以通过JNI(JavaNativeInterface)调用......
  • [迅为RK3568开发板]非科班也能玩转Android应用,体验QT跨平台能力
      QTforAndroid优势01-跨平台的优越性Qt是一个强大的跨平台框架,允许开发者使用相同的代码库来构建多个平台上的应用,包括Windows、macOS、Linux以及移动平台Android和iOS。这意味着开发者不需要为每个平台单独编写代码,可以显著减少开发时间和维护成本。同时,Qt提供......
  • node.js毕设基于android的课堂考勤管理系统 论文+程序
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于课堂考勤管理系统的研究,现有研究主要集中在传统的考勤方式或者基于PC端的管理系统,专门针对基于Android平台的课堂考勤管理系统的研究较少。在国内外......
  • Android 13 相较于 Android 12 的新特性
    标签:Android13;Android13新特性;Android13相较于Android12的新特性及开发者注意事项一、Android13相较于Android12的新特性Android13(代号Tiramisu)在用户体验、安全性、隐私保护以及开发者工具等多个方面进行了改进和增强。以下是一些主要的新特......
  • 安卓开发学习5 - 安卓简单控件+部分androidStudio快捷键+去除默认主题+实战简单计算器
    按钮-Button按钮控件button由textview派生而来,二者区别:button拥有默认的按钮背景,而textview默认无背景button的内部文本默认居中对齐,而textview的内部文本默认靠左对齐button会默认将英文字母转为大写,而textview保持原始的英文大小写与textview相比,button增加了两个新......
  • 基于SpringBoot编程语言在线学习平台的设计与实现
    博主主页:一点源码博主简介:专注Java技术领域和毕业设计项目实战、Java微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联......
  • Android Systrace的部分Tag含义
    systrace的一些tag标签的含义和作用。1.CPU*(0-7)Kernel内核模块,可以查看各个CPU执行了什么进程任务。cpu信息的目录是/sys/devices/system/cpu,例如我的一加六老设备:OnePlus6:/sys/devices/system/cpu$lscore_ctl_isolatedcpu4cpuidleisolatedposs......
  • 计算机编程语言黑客技术学习书籍大合集,零基础入门到精通,收藏这篇就够了
    │0day安全:软件漏洞分析技术(第2版).pdf│Android安全攻防权威指南.pdf│Android软件安全与逆向分析.pdf│ASP.NET从入门到精通第2版.pdf│CPrimerPlus(第五版)中文版.pdf│C和指针_第二版_.pdf│HADOOP权威指南第3版完整版.pdf│JavaScript权威指南(第6版......
  • 在Win11系统上安装Android Studio
    诸神缄默不语-个人CSDN博文目录下载地址:https://developer.android.google.cn/studio?hl=zh-cn官方安装教程:https://developer.android.google.cn/studio/install?hl=zh-cn点击Next,默认会同时安装AndroidStudio和Android虚拟机(测试用的,如果:选择安装路径,选择是否要安......
  • Android version has disappeared from Google Play #1700
     IfyouspeakRussian,4pdahasacustom'improvedversion'thatisprobablywhatyouneed.Ican'tlinktoithere,butsomesearchingshouldhelp.Atleastuntilitisopensourced/broughtbacktoanappstore.  Here’stheanswerI......