Kotlin-12-循环(for+repeat+list遍历)⽬录
1、⽅式⼀:点点循环递增
.. 代表从0到10的递增,包含10
/**
* 1、这个循环的字⾯意思就是:i 从 0 到 10 循环递增,.. 就是对0到10区间内的int值的简写
*/
for (i in 0..10){
println("i=$i")
}
//输出结果
i=0
i=1
i=2
i=3
i=4
i=5
投影仪怎么连接
i=6
i=7
i=8
i=9
i=10
2、⽅式⼆:until循环递增
人面花
until代表着 从0 到10为⽌的区间,意思是不包含10(注意与⽅式⼀的区别)
for (j in 0 until 10){
println("j=$j")
}
//输出结果
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
j=9
3、⽅式三:downTo循环递减
downTo代表了从10到0的递减,包含10 和 0 的输出
注意:递减循环不能使⽤点点和until ,否则不会有任何的输出
/**
* 3、downTo 代表的意思就是递减
*/
for (k in 10 downTo 0){
println("k=$k")
}
//输出结果
k=10
k=9
k=8
k=7
k=6
k=5
k=4
k=3
k=2
玉米粉粥>月光海岸k=1
k=0
//错误写法
for (e in 10 until 0){
println("error=$e")
}
for (e in 10 .. 0){
println("error=$e")
}
4、⽅式四:step 循环间隔
step代表循环的间隔⼤⼩
注意:这⾥还是需要与until的区分,until是不包含10的
/**
* step 的意思就是递增(递减)的间隔⼤⼩
*/
for (l in 0..10 step 2){
println("l=$l")
}
//输出结果
l=0
l=2
l=4
l=6
l=8
l=10
5、⽅式五:repeat重复循环
repeat(count:Int) ⼀个⾼阶的循环函数,count代表循环的次数,在函数内,it代表到第⼏次注意:it是从0开始计数的
repeat(10){
println("it=$it")
}
//输出结果
it=0
it=1
it=2
it=3
it=4
it=5
it=6
it=7
it=8
it=9
6、⽅式六:list遍历循环
这⾥其实就是对..和until的简写,因为list就代表了0到10的区间
val list= arrayListOf<String>("a","b","c","d")
for (str in list ){
println("str=$str")
}
//输出结果
str=a
str=b
str=c
str=d
7、⽅式七:list的解构遍历循环
解构在中有详细讲解
for ((index,str) in list.withIndex()){
println("第${index}个的元素是$str")
}
//输出结果
第0个的元素是a
第1个的元素是b
第2个的元素是c
第3个的元素是d
有一天晚上8、点点的其他作⽤
点点是⼀个范围表达式rangTo()的重载操作符。它除了上⾯表达int类型的区间以外,还能表⽰ 字母的区间。
fun main() {
val isTest1= "d" in "a".."d"
val isTest2= "d" in "a".."c"
println("isTest1=$isTest1")
println("isTest2=$isTest2")
}
//输出结果
isTest1=true
isTest2=fal
9、in 的其他作⽤
in除了上⾯遍历⼀个集合的作⽤以外,还能⽤来做集合包含的判断作⽤。
fun main() {
陶行知教育箴言val isTest1= "d" in "a".."d"
val isTest2= "d" in "a".."c"
val isTest3= "a" in listOf("a","z")
val isTest4= "a" !in listOf("b","z")
val isTest5= "zhang" in "abc".."xyz"
val isTest6= "li" in "abc".."xyz"
println("isTest1=$isTest1")
println("isTest2=$isTest2")
println("isTest3=$isTest3")
println("isTest4=$isTest4")
println("isTest5=$isTest5")
println("isTest6=$isTest6")
}
//输出结果
isTest1=true
国庆喜isTest2=fal
网络红歌isTest3=true
isTest4=true
isTest5=fal
isTest6=true