scala拥有非常宽松的控制结构。
if与while
scala中的if和while几乎和java中的结构一模一样。
//if语句
val a=1
if(a==0){
println(“0”)
}else{
println("not 0")
}
//while循环
val arr=Array(1,2,3)
var i = 0
println("start")
while (i < arr.length) {
println(arr(i))
i += 1
}
这里要注意的是java中的i++和++i在scala中是不起作用的。同时scala提倡函数式的编程,所以scala并没有提供break和continue关键字。
For语句循环
for循环是所有语言的循环结构中最重要的一块了,在scala中,我们可以这么使用for循环。
//从1一直打印到5
for(i <- 1 to 5 )
print(i+ ", ")
println("")
//打印1到4,不打印5
for(i <- 1 until 5 )
print(i+ ", ")
println("")
//打印数组
val arr=Array(1,2,3,4,5)
for(a <- arr)
print(a+", ")
除此之外,scala提供了一种依赖for循环的过滤器。
val a=Array("hello","bingo","lalalala","heiheiheihei","one~~~")
for ( i <- a
if i.startsWith("h")
) println(i)
通过条件筛选,每次只使用符合条件的数据。相比在java中反复的插入if判断,这样写看起来要舒服多了。
总结
if语句
while语句
for循环