Scala的集合(二)

1. 集合计算高集函数

任务要求

1)过滤:遍历一个集合并从中获取满足指定条件的元素组成一个新的集合

2)转化/映射(map):将集合中的每一个元素映射到某一个函数

3)扁平化

4)扁平化+映射 注:flatMap 相当于先进行 map 操作,在进行 flatten 操作集合中的每个元素的子元素映射到某个函数并返回新集合

5)分组:按照指定的规则对集合的元素进行分组

6)简化(归约)

7)折叠

案例演示

运行结果

1.2 Reduce方法

任务要求

Reduce 简化(归约) :通过指定的逻辑将集合中的数据进行聚合,从而减少数据,最终获取结果。

案例演示

运行结果

1.3 Fold方法

定义

Fold 折叠:化简的一种特殊情况

任务要求

1)fold 基本使用

案例演示

运行结果

2)两个集合合并

案例演示

运行结果

2​​​​​​​. 普通WordCount 案例

任务要求

单词计数:将集合中出现的相同的单词,进行计数,取计数排名前三的结果

案例演示

运行结果

2.2 复杂WordCount 案例

方式一(不通用)

运行结果

方式二

运行结果

3. 队列

案例演示

运行结果

4. 并行集合

定义

Scala 为了充分使用多核 CPU,提供了并行集合(有别于前面的串行集合),用于多核环境的并行计算。

案例演示

运行结果

​​​​​​​

相关推荐
1024奇点9 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
实名上网宋凯宣9 小时前
Django
后端·python·django
Warren2Lynch10 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
Knight_AL11 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
利威尔xu11 小时前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang
FRing0311 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
逃逸线LOF11 小时前
Ribbon负载均衡原理(Irule组件、源码分析)
后端·spring cloud·ribbon
by2099912 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享
砚底藏山河12 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
慢云智慧空间12 小时前
从设备智能到空间理解,空间智能终端解决方案商如何重新定义行业标准
后端