在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不相等的序列。