scala学习总结(4)

1.集合
-存放单值类型
*Seq
有序,可重复
*Set
无序,不能重复
-存放键值对
*Map
以k-v键值对的形式存放数据,其中key无序不能重复

-对于几乎所有的集合类,Scala都同时提供了可变和不可变的版本,分别位于以下两个包
*不可变集合:scala.collection.immutable
对集合进行添加或者删除操作的时候,会创建新的集合对象

*可变集合: scala.collection.mutable
对集合进行添加或者删除操作的时候,直接在原来的集合上操作,不会创建新的集合对象

-数组
Array
ArrayBuffer
-Seq
List
ListBuffer

-Set

-Map
当调用map.get方法的时候,返回的Option类型数据,Option有两个子类型,一个Some,另一个None
可以帮我们避免对空值进行处理的情况,使用getOrElse函数,给空值赋默认值

-元组
将多个相同或者不相同的类型数据组合在一起
(数据1,数据2)
Map集合中kv键值对就是一个特殊的元素,只有两个元素,我们称之为对偶

2.集合常用函数
-基本属性和常用操作
(1)获取集合长度
length
(2)获取集合大小
size
(3)循环遍历
foreach
(4)迭代器
iterator
(5)生成字符串
mkString
(6)是否包含
contains
-衍生集合
(1)获取集合的头
head
(2)获取集合的尾(不是头的就是尾)
tail
(3)集合最后一个数据
last
(4)集合初始数据(不包含最后一个)
init
(5)反转
reverse
(6)取前(后)n个元素
take|takeRight
(7)去掉前(后)n个元素
drop|dropRight
(8)并集
union
(9)交集
intersect
(10)差集
diff
(11)拉链
zip
(12)滑窗
sliding

-集合计算初级函数
(1)求和
sum
(2)求乘积
product
(3)最大值
max
(4)最小值
min
(5)排序
sorded|sortBy|sortWith

-集合计算高级函数
(1)过滤 filter(函数:指定过滤条件)
遍历一个集合并从中获取满足指定条件的元素组成一个新的集合

(2)转换/映射 map

(3)扁平化 flatten :::
将集合中元素由整体转换为个体的过程

(4)扁平映射 flatMap
先映射再进行扁平化处理

(5)分组 gruopBy
按照一定的分组规则,将集合中的元素放到不同的组中

(6)简化|规约
>对集合内部元素之间进行聚合
>reduce 聚合的数据类型一致
>reduceLeft|reduceRight 聚合的数据类型可以不一致

(7)折叠
>对外部元素和集合内部元素之间进行聚合
>fold 聚合的数据类型一致
>foldLeft|foldRight 聚合的数据类型可以不一致

-两个map集合之间的合并

posted @ 2021-01-13 15:52  恶霸xx  阅读(91)  评论(0编辑  收藏  举报