当前位置: 首页 > news >正文

Kotlin中循环语句

在Kotlin中,循环语句有多种形式,包括while循环、do-while循环、for循环等。下面将逐个说明每种形式的使用。

  1. while循环:
var n: Int = 5
while (n > 0) {println("n=$n")n--
}

上述代码中,使用while循环打印n的值,每次循环n减1,直到n变为0。

  1. do-while循环:
n = 5
do {println("n=$n")n--
} while (n > 0)

上述代码中,使用do-while循环打印n的值,先执行循环体,然后判断条件n是否大于0,如果成立则继续循环,否则结束循环。

  1. for循环:
for (i in 0..3) {println("i=$i")
}

上述代码中,使用for循环打印i的值,i的取值范围是0到3。循环体内部可以对i进行操作和处理。

  1. 循环语句只有一句,简写:
for (i in 0..3) println("i=>$i\n")

上述代码中,使用for循环简写形式,直接在循环语句后面写入需要执行的语句。

  1. 循环嵌套打印:
for (i in 1..5) {for (j in 1..i) {print("*")}println()
}

上述代码中,使用两层循环实现打印星号(*)的图形,外层循环控制行数,内层循环控制每行的星号数量。

  1. 普通forEach:
var intArray: IntArray = intArrayOf(1, 2, 3, 4)
intArray.forEach { print("$it \t") } // 1 	2 	3 	4
println()

上述代码中,使用forEach循环遍历数组intArray,对每个元素执行指定的操作。

  1. 带角标forEach:
intArray.forEachIndexed { index, it -> print("index=$index,it=$it \t") }
println()

上述代码中,使用forEachIndexed循环遍历数组intArray,同时获取元素的索引和值,并执行指定的操作。

  1. break跳出循环:
n = 5
while (n > 0) {print("n=$n \t") // n=5 	n=4 	n=3if (n == 3) breakn--
}
println()

上述代码中,使用while循环打印n的值,当n等于3时,使用break语句跳出循环。

  1. 跳出外层循环:
loop@ for (i in 0..9) {for (j in 0..i) {if (i > 4) {break@loop}print("*")}println()
}

上述代码中,使用两层循环打印星号(*)的图形,当外层循环的i大于4时,使用break@loop语句跳出外层循环。

  1. continue终止本次循环:
var sum: Int = 0
for (i in 1 until 101) {if (i % 2 == 0) {continue}sum += i
}
println("sum=$sum") // sum=2500

上述代码中,使用for循环计算1到100之间的奇数的和,当遇到偶数时,使用continue语句终止本次循环。

  1. 全部代码:
fun main() {// while循环var n: Int = 5while (n > 0) {println("n=$n")// n=5// n=4// n=3// n=2// n=1n--}// do while至少执行一次n = 5do {println("n=$n")// n=5// n=4// n=3// n=2// n=1n--} while (n > 0)// for 循环四次,步长为1,0..3标识[0,3]for (i in 0..3) {println("i=$i")// i=0// i=1// i=2// i=3}// 循环语句只有一句,简写for (i in 0..3) println("i=>$i\n")// 循环嵌套打印/***************** */for (i in 1..5) {for (j in 1..i) {print("*")}println()}// 普通 forEachvar intArray: IntArray = intArrayOf(1, 2, 3, 4)intArray.forEach { print("$it \t") } // 1 	2 	3 	4println()// 带角标 forEach// index=0,it=1 	index=1,it=2 	index=2,it=3 	index=3,it=4intArray.forEachIndexed { index, it -> print("index=$index,it=$it \t") }println()// brank跳出循环n = 5while (n > 0) {print("n=$n \t") // n=5 	n=4 	n=3if (n == 3) breakn--}println()// 跳出外层循环loop@ for (i in 0..9) {for (j in 0..i) {if (i > 4) {break@loop}print("*")}println()}// continue终止本次循环var sum: Int = 0for (i in 1 until 101) {if (i % 2 == 0) {continue}sum += i}println("sum=$sum") //sum=2500
}

以上是Kotlin中循环语句的使用示例,根据不同的需求可以选择适合的循环形式来实现相应的逻辑。

http://www.lryc.cn/news/198024.html

相关文章:

  • Java String之正则表达式
  • Kotlin 协程再探之为什么使用协程反而更慢了?
  • Hadoop3教程(十六):MapReduce中的OutputFormat
  • 通过表查询 sm37 排程运行情况 JOB 数据保存在表TBTCP 和 TBTCO中
  • append_ocr_trainf
  • 小程序原生代码转uniapp
  • 云原生微服务 第五章 Spring Cloud Netflix Eureka集成负载均衡组件Ribbon
  • 七大排序 (9000字详解直接插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序)
  • 一、nginx配置
  • win32汇编-LEA指令是将一个内存地址加载到一个寄存器中
  • leetcode做题笔记189. 轮转数组
  • 数据库第七章作业
  • 使用服务器训练模型的注意事项
  • Linux性能优化--性能追踪3:系统级迟缓(prelink)
  • SpringBoot2.x简单集成Flowable
  • 微信小程序一键获取位置
  • Linux性能优化--使用性能工具发现问题
  • 【Proteus仿真】【STM32单片机】路灯控制系统
  • Flutter笔记:发布一个Flutter头像模块 easy_avatar
  • 标准化助推开源发展丨九州未来参编开源领域4项团体标准正式发布
  • ChatGPT对于留学生论文写作有哪些帮助?
  • 【yolov8目标检测】使用yolov8训练自己的数据集
  • 【vue+nestjs】gitee第三方授权登录【超详细】
  • node 第八天 使用前后端不分离的方式实现cookie登录验证
  • Ubuntu系统如何进行网络连接-连接电脑局域网-物联网开发-Ubuntu系统维护
  • STL库——Vector常见使用接口
  • 将文件(File 对象)分割成多个块
  • 若要对多态类进行深拷贝,应使用虚函数的clone,而不是公开的拷贝构造赋值
  • 同构字符串(C++解法)
  • 『Linux升级路』基本指令