增:
集合之间合并类
++ ++:/union
+=增加一个string类型的集合,常用于map/元组/ArrayBuffer[T] var m=Map(“a”->1);m+=(“j”->0)
集合增加元素
+: :+ padTo 后补齐
删:
集合去除元素
drop 去除前n个 dropRight dropWhile
改:
集合修改
patch
update/updated
取值:
集合取值(单个、头尾、部分)
apply
head/headOption 返回集合第一个元素
tail 取出第一个元素后返回
last/lastOption 返回集合最后一个元素
init 去除最后一个元素后返回
inits 递归,返回Iterator(Array(),Array()…)
take/takeRight/takeWhile 取出前n个后返回
slice 取出集合中from 到 until 之间的片段后返回 左开右闭
view 返回的是SeqView
条件查:
集合取出条件元素/集合
filter filterNot 返回集合 =======》 相当于if
find 返回第一个符合条件的元素,返回Option形式
分割:
整个集合分割成一个/多个集合(按条件/没有条件)
一个集合:、
groupBy(f) 返回的是一个Map(String,Array())
partition(f) 返回的是一个元组(Array(),Array()),元组要先转化为iterator才能再转化为集合 (,).productIterator.toList
span 返回的是一个元组(Array(),Array())
splitAt 返回的是一个元组(Array(),Array()) 一定只会拆出2个
实质为多个集合
grouped 返回迭代 Iterator(Array(),Array())形式,可以用toList转成List 不一定只会有2个
sliding 滑块 Array(Array(),Array()…)
遍历:
集合遍历
collect/collectFirst 相当于循环数组,然后执行函数结果(只能用偏函数:可以只处理部分结果,剩余不要部分可以不返回 ,类似于filter后再map或者map)
map 返回集合,参数为函数
flatMap 遍历+扁平化 对于String类型的一维数组,能进一步扁平成char
scala> tmp.flatMap(x=>x+“dds”)
res49: Array[Char] = Array(A, d, d, s, B, d, d, s, C, d, d, s)
reverseMap 遍历+反转
foreach 没有返回
for+yield 既可以循环又可以输出,同map
for(i<- arr)也相当于遍历数组 (不支持元组,因为元组不能遍历,但可以普通循环,同时可以转化为iterator后在遍历)
拷贝:
集合拷贝
clone copyToArray copyToBuffer addString par
包含:
集合包含元素,返回boolean
contains
exists 参数为函数,可以代替contains
startWith/endWith 既能判断元素,也能判断集合
forall 判断集合中所有元素是否都满足函数
集合包含集合,返回boolean
containSlice
startWith
endsWith
corresponds
sameElements
空:
集合为空,返回boolean
isEmpty
nonEmpty
转换:
集合之间相互转化类型
iterator/toIterator
toArray
toBuffer
toList
toSet
toVector
交并:
集合并、交集,返回集合
diff 差集(不包含交集部分)
intersect 交集
union 并集
四则运算(累加累乘、最大最小、加、乘积、反转、去重等)
/: :
fold/foldLeft/foldRight
reduce/reduceLeft/reductRight/reduceLeftOption/reduceRightOption
scan/scanLeft/scanRight
max/minBy
min/maxBy
sum
product
reverse/reverseIterator
distinct
索引:
集合索引相关 返回索引
indexOf/lastIndexOf
indexOfSlice/lastIndexOfSlice
indexWhere 参数是函数,满足条件的第一个索引
indices
isDefinedAt 数组是否存在指定索引
长度:
集合长度相关
length
lengthCompare
count 参数为函数
prefixLength 从前往后数到第一个满足条件的值的个数
segmentLength
排序:
集合排序
sorted
sortBy
sortWith
排列组合:
排列组合,返回迭代
permutations
combinations
集合格式(压缩,扁平化等)
mkString
flatten
集合同下标合并解压
transpose Array(Array(),Array()…) 返回Array(Array(),Array())
unzip 目标类型 Array((),()…)返回(Array(),Array()…)
zip 返回Array((),()…)
zipAll 返回Array((),()…)
zipWithIndex 返回Array((),()…)