循环方式
循环方式1:闭合 to
// 循环遍历[1,3]
for(i<- 1 to 3){
print(i+" ")
}
循环方式2:前闭合后开 util
// 循环遍历[1,3)
for(i<- 1 until 3){
print(i+" ")
}
循环守卫
保护式为true则进入循环体,否则则跳过
例子
// 如果i除以2等于0,则打印
// if为关键字隔开所以不用加分号
for(i<- 1 to 3 if i%2 == 0){
print(i)
}
引入变量
// 如果没有关键字隔开需要加分号
// j为变量
for(i<- 1 to 3; j = i+1){
print(j)
}
嵌套循环
for(i <- 1 to 3; j<- 1 to 3){
println(i+" "+j)
}
等价于
for (i<- 1 to 3){
for(j<- 1 to 3){
println(i+" "+j )
}
}
循环返回值
将遍历过程中处理的结果返回到一个新的vector集合中去,使用yield关键字
// 1. 对1 to 10进行遍历
// 2. yield i 将每次循环得到i,放入到集合vector中,并返回给res
// 3. i这里可以是个代码块,这就意味着我们可以对进行处理
// 4.体现了scala的一个重要的语法特点,就是将一个集合进行处理,并返回给一个新的集合
val res = for (i<- 1 to 10) yield i
println(res)
使用{}替代()
使用{}来换行写表达式时,分号就不用写了
for(i <- 1 to 3; j<- 1 to 3){
println(i+" "+j)
}
等价于
for{
i<-1 to 3
j<-1 to 3
}{
println(i+" "+j)
}
循环步长控制
// 范围1到10,步长为5
for(i<- Range(1, 10, 5)){
println(i)
}
网友评论