不可变数组与可变数组的转换
arr1.toBuffer :将不可变数组 arr1 转换为可变数组,原 arr1 不变,返回新的可变数组 。
arr2.toArray :把可变数组 arr2 转为不可变数组, arr2 本身不变,返回新的不可变数组 。
多维数组
多维数组定义
val arr = Array.ofDim[Double](3,4) 定义了一个二维数组,包含3个一维数组,每个一维数组有4个 Double 类型元素
不可变List
原理说明
特性:List 默认是不可变集合,即创建后不能修改其元素 。数据具有顺序且可重复。
操作:涵盖创建、遍历、增加数据、集合间合并(扁平化)、空集合( Nil )等操作。增加数据时, :: 运算符从右向左运算 。
可变ListBuffer
原理说明
可创建可变集合 ListBuffer ,能向集合中添加数据。
不可变Set
原理说明
特性:默认是不可变集合,数据无序且不可重复 。
可变mutable.Set
可创建可变集合,支持打印集合、添加元素(两种方式,一种就地添加,一种返回新集合 )、删除数据等操作。需引用
不可变Map
可创建不可变 Map 集合,支持循环打印、访问数据。当通过 get 访问数据时,返回特殊类型 Option ,有值为 Some ,无值为 None ;若键不存在,可通过 getOrElse 方法返回指定默认值(如0 ) 。
可变Map
可创建可变 Map 集合,支持打印集合、增加数据、删除数据、修改数据等操作。
元组
元组是将多个无关数据封装成的一个整体,最多包含22个元素 。 Map 中的键值对本质是元素个数为2的元组,也叫对偶。
集合常用函数 - 基本属性和常用操作
涉及获取集合长度、大小,循环遍历,使用迭代器,生成字符串,判断是否包含等操作 。
Scala语言中集合的衍生集合
元素获取相关
获取集合的头:集合的第一个元素。
获取集合的尾:除头元素外的其余元素 。
集合最后一个数据:集合的末尾元素。
集合初始数据:不包含最后一个元素的集合 。
元素处理相关
反转:将集合元素顺序颠倒 。
取前(后)n个元素:获取集合开头或末尾指定数量的元素 。
去掉前(后)n个元素:移除集合开头或末尾指定数量的元素 。
集合运算相关
并集:将两个集合的元素合并,去重(若集合元素无重复特性要求,可能有重复元素 ) 。
交集:取两个集合中相同的元素 。
差集:从一个集合中去掉另一个集合包含的元素 。
拉链(zip):将两个集合按顺序一一对应组合成元组的集合 。
滑窗:在集合上按固定窗口大小滑动,获取不同的子集合 。
集合计算简单函数
求和:计算集合元素总和 。
求乘积:计算集合元素乘积 。
最大值:找出集合中的最大元素 。
最小值:找出集合中的最小元素 。
排序:包括按元素大小、绝对值大小、自定义升序、自定义降序等多种方式