Scala系列8:函数式编程之map,flatten,flatmap的使用详解
0.Scala函数式编程 我们将来使用Spark/Flink的大量业务代码都会使用到函数式编程。下面这些事开发中常用的函数式编程。注意这些函数都是操作 Scala 集合的,一般会进行两类操作:转换操作(transformation )和行动操作(actions)(有些人喜欢叫他为聚合操作)。第一种操作类型将集合转换为另一个集合,第二种操作类型返回某些类型的值。 遍历( foreach ) 映射( map ) 映射扁平化( flatmap ) 过滤( filter ) 是否存在( exists ) 排序( sorted 、 sortBy 、 sortWith ) 分组( groupBy ) 聚合计算( reduce ) 折叠( fold ) 1.map的使用详解 集合的映射操作是将来在编写Spark/Flink用得最多的操作,是我们必须要掌握的掌握。 map方法接收一个函数,将这个函数应用到每一个元素,返回一个新的列表 【1.1语法结构】 def map[B](f: (A) ⇒ B): TraversableOnce[B] 【1.2语法解释】 尖叫提示: 1.同foreach一样,map传入的参数也是函数,匿名函数 2. map 函数的逻辑是遍历集合中的元素并对每个元素调用函数。你也可以不调用任何函数,保持返回元素本身,但这样 map无法发挥作用,因为你在映射过后得到的是同样的集合。