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