与java等其它编程语言类似,scala也拥有类似的循环结构:
1.while循环
while(x>0){
sum=sum+x
x=x-1// x-=1 但是scala中没有自加和自减语法
}
2. for循环
for(i<- 1 to n)
sum=sum+i
for(i<-0 until(x)) // for(i<-0 until x) 循环到x-1
println(i)
3.scala中没有提供break和contiune语句来退出循环 但是有三种方法可以跳出
1.使用boolean型控制变量。
2.使用嵌套函数,让函数实现renturn功能
3.使用Break对象中的break方法
4.高级for循环和for推导式 :
1.多个生成器
for(i<-1 to 3;j<-1 to 3)
println((10*i+j) )
//输出结果11 12 13 21 22 23 31 32 33(为节约空间空格代表着分行起)
2.每个生成器都可以带一个守卫,以if开头的boolean表达式:
for(i<-1 to 3;j<-1 to 3 if i=j) println((10*i+j) )
补充:跳出循环方法
import scala.util.control.Breaks._
def brek_demo(x:Int)={
breakable{
for(i<-1 to x) {
if (i== 3) break
println(i)
}
}
}