大三寒假学习 spark学习 针对集合的操作
Posted 风吹过半夏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大三寒假学习 spark学习 针对集合的操作相关的知识,希望对你有一定的参考价值。
列表的遍历:
可以使用for循环遍历
也可以使用foreach进行遍历
映射的遍历:
映射遍历的基本格式:
for ( (k,v) <- 映射) 语句块
也可以使用foreach来实现对映射的遍历:
也可以用下面这种方式:kv._1相当于键,kv._2相当于值
map操作:
map操作是针对集合的典型变换操作,它将某个函数应用到集合中的每个元素并产生一个结果集合
flatMap操作:
flatMap是map的一种扩展。在flatMap中,我们会传入一个函数,该函数对每个输入都会返回一个集合(而不是一个元素),然后,flatMap把生成的多个集合“拍扁”成为一个集合
上面的flatMap执行时,会把books中的每个元素都调用toList,生成List[Char],最终,多个Char的集合被“拍扁”成一个集合
filter操作:
遍历一个集合并从中获取满足指定条件的元素组成一个新的集合。Scala中可以通过filter操作来实现
采用filter操作过滤得到那些学校名称中包含“Xiamen”的元素
采用filter操作过滤得到那些学校名称中以字母“P”开头的元素
reduce操作:
reduce包含reduceLeft和reduceRight两种操作,前者从集合的头部开始操作,后者从集合的尾部开始操作:
reduceLeft(C +_)整个加法操作的执行顺序如下
reduceRight(+_)表示从列表尾部开始对两两元素进行求和操作,顺序如下
直接使用reduce,而不用reduceLeft和reduceRight,这时,默认采用的是reduceLeft
fold操作:
折叠(fold)操作和reduce (归约)操作比较类似。fold操作需要从一个初始的“种子”值开始,并以该值作为上下文,处理集合中的每个元素
以上是关于大三寒假学习 spark学习 针对集合的操作的主要内容,如果未能解决你的问题,请参考以下文章