在Scala中,for循環有兩種形式可以使用:for循環和for推導式。
for (i <- 1 to 5) {
println(i)
}
上面的代碼會打印出1到5之間的數字。
val nums = List(1, 2, 3, 4, 5)
val squares = for (n <- nums) yield n * n
上面的代碼會生成一個新的List,其中包含nums中每個元素的平方。
除了基本的for循環和for推導式之外,Scala還支持使用條件和嵌套循環的復雜for循環。例如:
for {
i <- 1 to 3
j <- 1 to 2
if i != j
} yield (i, j)
上面的代碼會生成一個包含所有(i, j)對,其中i和j不相等的序列。