scala:if、for 程序结构
for
scala> for(i <- 1 to 10) print(i + " ")
1 2 3 4 5 6 7 8 9 10
scala> for(i <- 1 to 10 by 2) print(i + " ")
1 3 5 7 9
scala> for(i <- 1 until (10, 3)) print(i + " ")
1 4 7
scala> for(i <- (1 until (10, 3)).reverse) print(i + " ")
7 4 1
用yield
可以生成新数组,不会影响原数组。(若for
是一个程序块,则yield
在{}
外面)
for
结构可以返回值。
scala> val newArr = for(a <- Array(1,2,3)) yield {a*3}
newArr: Array[Int] = Array(3, 6, 9)
可以通过增加条件从而只遍历数组中指定元素:
scala> for(e <- 1 to 10 if e % 2 == 0) print(e + " ")
2 4 6 8 10