Scala 集合 - FlatMap 方法


flatMap() 方法是 TraversableLike 特征的方法,它接受一个谓词,将其应用于集合的每个元素,并返回由谓词返回的元素的新集合。

句法

以下是 flatMap 方法的语法。

def flatMap[B](f: (A) ? GenTraversableOnce[B]): TraversableOnce[B]

这里,f:(A)?GenTraversableOnce[B] 是应用于集合的每个元素的谓词或条件。此方法返回包含满足给定条件的迭代器的匹配元素的 Option 元素。

用法

下面是一个展示如何使用 flatMap 方法的示例程序 -

例子

object Demo {
   def main(args: Array[String]) = {
      val list = List(1, 5, 10)
      //apply operation
      val result = list.flatMap{x => List(x,x+1)}
      //print result
      println(result)      
   }
}

将上述程序保存在Demo.scala中。以下命令用于编译和执行该程序。

命令

\>scalac Demo.scala
\>scala Demo

输出

List(1, 2, 5, 6, 10, 11)