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,提供了并行集合(有别于前面的串行集合),用于多核环境的并行计算。

案例演示

运行结果

​​​​​​​

相关推荐
技术求索者5 分钟前
c++学习
开发语言·c++·学习
山猪打不过家猪42 分钟前
(二)毛子整洁架构(CQRS/Dapper/领域事件处理器/垂直切片)
开发语言·.net
海天胜景1 小时前
HTTP Error 500.31 - Failed to load ASP.NET Core runtime
后端·asp.net
海天胜景1 小时前
Asp.Net Core IIS发布后PUT、DELETE请求错误405
数据库·后端·asp.net
方博士AI机器人3 小时前
Python 3.x 内置装饰器 (4) - @dataclass
开发语言·python
源码云商3 小时前
Spring Boot + Vue 实现在线视频教育平台
vue.js·spring boot·后端
weixin_376934633 小时前
JDK Version Manager (JVMS)
java·开发语言
Logintern093 小时前
【每天学习一点点】使用Python的pathlib模块分割文件路径
开发语言·python·学习
cykaw25903 小时前
QT 文件选择对话框 QFileDialog
开发语言·qt
大龄Python青年4 小时前
C语言 交换算法之加减法,及溢出防范
c语言·开发语言·算法