Kotlin循环语句
每门语言都要学一下循环语句,虽然每种语言都有for、while等循环,但总有些各自的特色。
1、for循环
for循环遍历集合或者数组,使用 in 关键字遍历任何提供迭代器。语法:
for (item in collection) print(item)
例:
先定义一个数组或集合array:
class Item {
//Item类型
}
var array: List<Item> = ArrayList<Item>()
遍历集合array:
//不指明类型
for (i in array) {
}
//指明类型
for (item: Item in array) {
}
通常还需要用到索引index,调用集合的withIndex()方法参与循环遍历。
/**
* 返回一个懒惰的[Iterable],它将原始集合的每个元素包装到一个[IndexedValue]中,
* 其中包含该元素的索引和元素本身。
*/
public fun <T> Iterable<T>.withIndex(): Iterable<IndexedValue<T>> {
return IndexingIterable { iterator() }
}
例:使用下面的方式遍历for循环,同时获取元素当前索引index和当前值item
for ((index, item) in array.withIndex()) {
println("index = " + index + " item = " + item)
}
2、while
while循环先判断条件,条件满足再进行循环。如果一开始条件就不满足,一次循环也没有。
例:
var i = 0
while (i < array.size) {
println(array[i++])
}
3、do...while...
do...while...循环先执行一次循环体,再判断条件。
var i = 0
do {
print(i++)
} while (i < 5)
//输出:0 1 2 3 4
至少进行一次循环,即使后面的条件不满足。比如下面的代码,也会执行一次循环体再结束。
var i = 0
do {
print(i++)
} while (i < 0)
//输出:0
所以while和do...while...合理选择。有些场景适合do...while...比如数据库Cursor的遍历。
4、循环控制
循环控制语句,在恰当的地方控制循环继续还是结束。
4.1、break和continue
①break:终止最近的循环体
②continue:继续下一次最近循环体的循环
③return:直接从当前方法返回
4.2、label标签
关于label参考标签:label。
学习资料:
Kotlin 循环控制
精彩的人生需要浪漫、无畏和勇气。