map与flatMap的区别
2019-02-15 本文已影响664人
一个人一匹马
flatMap
val lineArray = Array("hello you","hello me","hello world")
val lines = sc.parallelize(lineArray, 1)
val words = lines.flatMap(line =>{ line.split(" ") })
words.foreach {
word => println(word.mkString)
}
结果:

map
val lineArray = Array("hello you","hello me","hello world")
val lines = sc.parallelize(lineArray, 1)
val words = lines.map(line =>{ line.split(" ") })
words.foreach {
word => println(word.mkString)
}
结果

map:获取一个新元素(原本几个元素还是几个元素) flatmap 获取一个或者多个新元素(比原来的元素多)