for循环操作
scala> for (i <- 1 to 20){
println(i)
}
scala> var num=1.to(20)
for (i <- num){
println(i)
}
嵌套循环
scala> for(i <- 1 to 3 ; j<- 1 to 5){print("*"); if(j==5)println()}
循环嵌套守卫
scala> for(i <- 1 to 20 if i%2==0) println(i)
推导式
scala> for(i <- 1 to 20 if i%2==0) yield i *2
while循环
scala> var i = 0
while (i < 10) {
println(i)
i += 1
}
break() 和continue
- scala中,没有break/continue关键字
- 如果一定使用break/continue,就需要使用scala.util.control包的Break类的breable和break方法
实现break
// 导入scala.util.control包下的Break
import scala.util.control.Breaks._
breakable {
for (i <- 1 to 100) {
if (i >= 50) break()
else println(i)
}
}
实现 continue
用法:
- continue 的实现与break类型,单有一点不同:
- 实现continue是用breakbale{}将for表达式循环包含起来
示例
打印1-100的数字,使用for表达式来遍历,如果数字能整除10,不打印
// 导入scala.util.control包下的Break
import scala.util.control.Breaks._
for(i <- 1 to 100 ) {
breakable{
if(i % 10 == 0) break()
else println(i)
}
}