Lee-yl

scala学习(1)----map和flatMap的区别

转载:https://www.cnblogs.com/wbh1000/p/9846401.html

两者的区别主要在于action后得到的值

例子:

复制代码
import org.apache.spark.{SparkConf, SparkContext}

object MapAndFlatMap {
  def main(args: Array[String]): Unit = {
    val sc = new SparkContext(new SparkConf().setAppName("map_flatMap_demo").setMaster("local"))
    val arrayRDD =sc.parallelize(Array("a_b","c_d","e_f"))
    arrayRDD.foreach(println) //打印结果1

    arrayRDD.map(string=>{
      string.split("_")
    }).foreach(x=>{
      println(x.mkString(",")) //打印结果2
    })

    arrayRDD.flatMap(string=>{
      string.split("_")
    }).foreach(x=>{
      println(x.mkString(","))//打印结果3
    })
  }
}
复制代码

上述代码中,打印结果1、2、3分别如下面三图

 

打印结果1

 

打印结果2

 

打印结果3

分类:

技术点:

相关文章:

  • 2021-12-26
  • 2021-11-23
  • 2021-12-09
  • 2022-02-09
  • 2021-12-04
  • 2021-11-23
  • 2021-11-17
猜你喜欢
  • 2021-11-22
  • 2021-11-27
  • 2021-11-18
  • 2021-11-23
  • 2021-12-02
  • 2021-12-10
相关资源
相似解决方案