Scala for循环yield

Scala for循环yield教程

Scala 中,for 循环 可以被当做一个变量来存储,即使用 yield 来实现。

Scala for循环yield详解

语法

var retVal = for{ var x <- List if condition1; if condition2... }yield x

说明

注意大括号中用于保存变量和条件,retVal 是变量,循环中的 yield 会把当前的元素记下来,保存在集合中,循环结束后将返回该集合。

案例

for循环yield

使用 for 循环,遍历yield

object HaiCoder { def main(args: Array[String]) : Unit = { println("嗨客网(www.haicoder.net)!\n") var a = 0; val numList = List(1,2,3,4,5,6,7,8,9,10); // for 循环 var retVal = for{ a <- numList if a != 3; if a < 8 }yield a // 输出返回值 for( a <- retVal){ println( "Value of a: " + a ); } } }

程序运行后,控制台输出如下:

17_Scala for循环yield.png

我们可以使用 yield 将循环当做一个变量处理。

Scala for循环yield总结

在 Scala 中,for 循环可以被当做一个变量来存储,即使用 yield 来实现。语法为:

var retVal = for{ var x <- List if condition1; if condition2... }yield x