在Scala中,for循环有两种形式可以使用:for循环和for推导式。
- for循环:
for (i <- 1 to 5) { println(i) }
上面的代码会打印出1到5之间的数字。
- for推导式:
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不相等的序列。