Kotlin循环控制
南巷羽 人气:0本文总览
本篇来学习Kotlin循环结构的知识
1. While循环
while
循环用于重复迭代代码块,只要给定条件为 true就会执行一次循环代码块。若条件为 false,则直接跳过循环代码块执行后面代码。
while (x > 0) { x-- } // 当条件 x>0 成立,x 就会减一
do-while
循环 与 while
循环相类似,也可用于重复执行迭代代码块。但有差别的点是:它会先执行一次循环代码块,才检测条件是否满足,换句话说:它会至少执行一次 循环代码块。
do { val y = retrieveData() } while (y != null) // 不管while 条件是否满足,都会先执行一次 y = retrieveData()
有时候会看到一些无限循环的示例,只要将条件语句设定为 true,就会一直循环执行 迭代代码块:
do { // 循环代码块 } while (true)
2. For循环
for
循环用于迭代或循环 数组,范围,集合等的元素,可以对任何提供迭代器(iterator)的对象进⾏遍历。它的语法格式:
for (item in collection) {// 逻辑处理}
⼀个成员函数或者扩展函数 iterator() 返回 Iterator<>
- 有⼀个成员函数或者扩展函数 next()
- 有⼀个成员函数或者扩展函数 hasNext() 返回 Boolean
可以用在数字区间上迭代,使用区间表达式
for (i in 1..3) { println(i) } // 逐个打印 区间[1,3]中的数字
- 遍历数组,同时打印出元素下标和元素值
for ((index, value) in array.withIndex()) { // 使用 库函数withIndex() println("the element at $index is $value") // 逐个打印元素的下标和数值 }
forEach
语句:使用这个语句遍历数组或集合,比for
语句更加简便,语法形式如下:
调用者.forEach() { println("it=${it}") // 逐个打印元素 }
日常开发中,结合实际业务场景来选取使用 for
还是 for-each
。
3. break和continue
在 Kotlin 中有三种结构化跳转表达式:
- return 直接返回方法/函数的值,结束;
- break 跳出本次循环,继续执行后面业务代码
- continue 跳出本次循环,直接进入下一次循环
3.1 break语句
break
最常用在 java 中,常与与 switch
组成 switch-break 语句。但在 Kotlin 中没有switch这个语法,break
语句通常与 if
表达式 一起用:
for(n in 1..10){ if (n==5) { break // 在 n = 5时跳出循环 } }
与 if语句组合,一旦满足给定的条件时,就会终止本次循环。
3.2 continue语句
continue
用于跳过本次迭代并将控制流跳转到下一次迭代,通常与 if
表达式 一起使用,以跳过指定条件的当前循环。
for (n in 1..5){ ... if(n==2||n==4) { continue // 只要满足上述条件,就会执行该语句跳出本次循环 } ... }
其实 continue 在Java或者Kotlin用法是一样的,都很好理解和记住。
总结
主要学习了循环结构的几个语法知识点, 之前学过 java或c/c++的话,这个知识点其实一点都不难,if while的用法完全一样,只是写法有一点点调整。还结合示例代码有助于加深理解,学知识就是多写多练!
加载全部内容