scala collection(集合)

1.元祖(t)

不可变,包含不同类型元素

1)支持最大长度:22

2)访问:t._1,t._2 访问1,2个元素

3)迭代元祖:tuple.productIrerator()

4)tuple.toString() 将所有元素组合成字符串

5)Tuple.swap交换元组元素

2.列表(list)

所有元素类型都相同,列表不可变,值一旦定义不能改变,具有递归结构

1)声明:val site:List[String] = List("a","b","c")  List[Nothing] = List()

2)基本操作:

head:返回列表第一个元素

tail:返回一个列表,包含除了第一个元素之外的其他元素

isEmpty:在列表为空时返回true

List.concat() 连接两个或多个列表

List.fill() 创建一个指定重复数量的元素列表

List.fill(3)("Runoob") 
输出:
List(Runoob, Runoob, Runoob)

list.tatulate():给定函数来创建列表

第一个参数为元素的数量,可以是二维的;第二个参数为指定的函数,通过指定函数计算结果并返回值插入到列表中

list.reverse():用于列表的顺序反转

llist常用方法:List(1)

2+:List(1) List(2,1)

List(1):+2 List(1,2)

val x = List(1,2)

x.contains(1) //检测列表中是否包含指定元素

x.apply(0) 1 x.apply(1) 2 //通过列表索引获取元素

x.copyToArray(xx) 复制列表元素到xx数组中

x.distinct() 去除列表重复元素 返回新列表

x.drop(n) 丢弃前n个元素

x.dropRight(n) 丢弃最后n个元素

x.equals(t) 判断是否相等

x.exists(record=> record==1)

x.foreach(f) 将函数应用到列表所有元素

x.sorted() 排序

x.sum() 计算元素和

x.toMap() 转换为map 

3.Map(映射)

可迭代的键值对(key/value)结构

Map中的键都是唯一的,哈希表,两种类型:可变不可变

var (val) A:Map[Char,Int] = Map //空哈希表,键为字符串 值整型

A += ("1"->1) //扩展键值对

三种基本操作:

keys://返回Map所有键

values //返回Map所有值

isEmpty //Map为空返回true

++ //将两个Map合并操作

A.get(key) //返回指定key值

A.contains(key) //查看map是否存在key

常用方法:

++  组合 map+map

- (e1:A,e2:A,e3:A) 移除key 为e1,e2,e3的元素

--  map-map

clear():清空

clone():复制

count():计算满足指定条件的元素数量

default()://定义默认Map值

drop():丢弃前n个元素新集合

empty() 返回相同类型的空Map

equals() map相等

last: 最后一个元素

min:查找最小元素

max:最大元素

product() 返回集合中数字元素的积

remove(key) //移除key

size()://返回map元素个数

4.Option(选项)

用来表示一个值是可选的(有值/无值)

Option[T]是一个类型是T的可选值容器;如果值存在,就是Some[T];如果不存在就是None

原文地址:https://www.cnblogs.com/supermanwx/p/9963854.html