- if语句和while语句基本与java相似,有一点不同的是,scala中if表达式的值可以赋值给变量,例如:
val x = 6
val a = if (x>0) 1 else -1
var i = 9
while (i > 0) {
i -= 1
printf("i is %d\n",i)
}
var i = 0
do {
i += 1
println(i)
}while (i<5)
- for循环格式如下
for(变量<-表达式
)语句块 其中,括号部分被称为“生成器(generator)” 例如:
for (i <- 1 to 3) println(i)
返回值:
1
2
3
还可以改变步长,例如:
for (i <- 1 to 5 by 2) println(i)
返回值:
1
3
5
添加控制条件:
for (i <- 1 to 5 if i%2==0) println(i)
返回值:
2
4
添加多个“生成器”,用分号相隔:
for (i <- 1 to 5 if i%2==0; j <- 1 to 3 if j!=i) println(i*j)
返回值:
2
6
4
8
12
(在学习for推导式时有些模糊,yield关键字的应用不太懂,弄明白后再更新)