1.for循环
[for ( 循环变量 <- 数据集) {]()
// 循环体代码
}
1.如果循环变量的类型能被推断出来,是可以省略掉变量类型的。
2.这里的数据集可以是任意类型的数据集合,如字符串,集合,数组等等
列题:
//1.基本用法
for(j <-1 to 20 by 1){
println(j)
}
//2.步长
//1 2 3 4 5 6 7 8(步长:1)
//1 3 5 7 9 11 13 15(步长:2)
for(i <-1 to 20 by 2){
println(i)
}
//打印1-20的偶数
for(j <-1 to 20){
if(j%2==0)
println(j)
}
2.循环守卫
可以在循环中添加条件,如果条件成立就执行循环。这个叫循环守卫。
for(j <-1 to 20; if(j%2==0); if(j%3==0) ){
println(j)
}
3.循环的返回值
之前学习过if的返回值,for也可以获取到返回值,使用yield。
//for循环的返回值
//for 循环值是一个列表,里面保存了多个值
val rs = for(i <-1 to 4) yield{
i*2
}
println(rs)
println(rs(0))
println(rs(1))
println(rs(2))
}
任务:
任务一:打印数字1 ~ 100,每行包括一组5个数,每组换行
var num = 0.0
for(i <-1 to 100){
print(f"$i%3d")
if(i%5==0)
println()
}
任务二:输入一个正整数n,输出 斐波那契数列的前n项。
任务三:输入一个正整数n, 输出一个高度为n的等腰三角形。