Scala函数

++函数,合并两个集合并且返回一个新数组,++:返回类型和:后的集合类型一样

++:函数,操纵数的类型决定返回结果的类型

+:函数,:于数组前放入元素

/:函数,执行最后一个括号内的加减乘除操作以二叉树的形式

:\函数,执行最后一个括号内的加减乘除操作以二叉树的形式

addString函数添加元素

aggregate函数:聚合分析,先使用给定参数和集合内容进行函数1操作,再将结果进行函数2操作

aggregate函数:聚合分析,先使用给定参数和集合内容进行函数1操作(按照奇数偶数进行分组操作),再将结果进行函数2操作

apply函数:取出索引处的元素

canEqual函数,比较两边,为any的子类都是true

charAt函数,获取index索引处的字符,这个方法会执行一个隐式的转换,将Array[T]转换为 ArrayCharSequence,只有当T为char类型时,这个转换才会发生。

collectFirst函数:在序列中查找第一个符合偏函数定义的元素,并执行偏函数计算

定义偏函数

combinations函数:排列组合,所有不重复的组合,结果为迭代器集,迭代器只能读一次,之后会释放内存

containsSlice函数:判断数组中是否有指定序列(包括顺序)/必须一摸一样

contains函数:判断序列中是否包含指定对象

copyToArray函数:数组导入数组/集合

copyToBuffer函数:将数组中的内容拷贝到Buffer中

corresponds函数:判断arr数组是否满足arr1条件匹配

count函数:计算符合条件的个数

diff函数:差集,计算当前数组与另一个数组的不同。将当前数组中没有在另一个数组中出现的元素返回

distinct函数:去除当前集合中重复的元素,只保留一个

drop函数:删除元素

dropRight函数:功能同 drop,去掉尾部的 n 个元素

dropWhile函数:去除当前数组中符合条件的元素,这个需要一个条件,就是从当前数组的第一个元素起,就要满足条件,直到碰到第一个不满足条件的元素结束(即使后面还有符合条件的元素),否则返回整个数组

endsWith函数:判断是否以某个序列结尾

exists函数:判断当前数组是否包含符合条件的元素

filter函数:过滤,取得当前数组中符合条件的元素,组成新的数组返回

filterNot函数:过滤,取得当前数组中不符合条件的元素,组成新的数组返回

find函数:寻找第一个符合条件的元素

flatMap函数:对当前序列的每个元素进行操作,结果放入新序列返回,参数要求是GenTraversableOnce及其子类

flatten函数:将二维数组的所有元素联合在一起,形成一个一维数组返回

fold函数:对序列中的每个元素进行二元运算,和aggregate有类似的语义,但执行过程有所不同,我们来对比一下他们的执行过程。

foldLeft函数:从左到右计算

foldRight函数:从右到左计算

forall函数:检测序列中的元素是否都满足条件 p,如果序列为空,返回true

foreach函数:检测序列中的元素是否都满足条件 p,如果序列为空,返回true

groupBy函数:按条件分组,条件由 f 匹配,返回值是Map类型,每个key对应一个序列

grouped函数:按指定数量分组,每组有 size 数量个元素,返回一个集合

hasDefiniteSize函数:检测序列是否存在有限的长度,对应Stream这样的流数据,返回false

head函数:返回序列的第一个元素,如果序列为空,将引发错误

headOption函数:返回Option类型对象,就是scala.Some 或者 None,如果序列是空,返回None

indexOf函数:返回elem在序列中的索引,可以指定从某个索引处(from)开始查找,找到第一个就返回

indexOfSlice函数:检测当前序列中是否包含另一个序列(that),并返回第一个匹配出现的元素的索引

indexWhere函数:返回当前序列中第一个满足 p 条件的元素的索引

indices函数:返回当前序列索引集合

init函数:返回当前序列中不包含最后一个元素的序列,4个元素就返回前三个元素

inits函数:对集合中的元素进行 init 操作,该操作的返回值中, 第一个值是当前序列的副本,包含当前序列所有的元素,最后一个值是空的,对头尾之间的值进行init操作,上一步的结果作为下一步的操作对象

intersect函数:取两个集合的交集,即两个集合都有的元素

isDefinedAt函数:判断序列中是否存在指定索引

isEmpty函数:判断当前序列是否为空

isTraversableAgain函数:判断序列是否可以反复遍历

iterator函数:对序列中的每个元素产生一个 iterator,迭代遍历

last函数:取得序列中最后一个元素

lastIndexOf函数:取得序列中最后一个等于elem元素的位置

lastIndexOfSlice函数:判断当前序列是否含有其他定义好的序列,并且返回最后一次出现该序列位置的索引

lastOption函数:返回当前序列中最后一个对象

length函数:返回当前序列中元素的个数

map函数:对序列中的元素进行定义好的计算操作

max函数:返回序列中最大的元素

minBy函数:返回序列中第一个符合条件的最大的元素

mkString函数:将所有元素组合成一个字符串

nonEmpty函数:判断序列不为空

padTo函数:后补齐序列,如果当前序列长度小于 len,那么新产生的序列长度是 len,多出的几个位值填充 elem,如果当前序列大于等于 len ,则返回当前序列

par函数:返回一个并行实现,产生的并行序列为val,不可被修改

partition函数:按条件将序列拆分成两个新的序列,满足条件的放到第一个序列中,其余的放到第二个序列,下面以序列元素是否是 2 的倍数来拆分

patch函数;批量替换,从原序列的 from 处开始,后面的 replaced 数量个元素,将被替换成序列 that

permutations函数:排列组合,他与combinations不同的是,组合中的内容可以相同,但是顺序不能相同,combinations不允许包含的内容相同,即使顺序不一样

prefixLength函数:给定一个条件 p,返回一个前置数列的长度,这个数列中的元素都满足 p

product函数:返回所有元素乘积的值

reduce函数:同 fold,对序列中的每个元素进行二元运算,不需要初始值

reduceLeft函数:从左向右计算

reduceRight函数:从右向左计算

reduceLeftOption函数:计算Option,参考reduceLeft

reduceRightOption函数:计算Option,参考reduceRight

reverse函数:反转序列

reverseIterator函数:反向生成迭代

reverseMap函数:同 map 方向相反

sameElements函数:判断两个序列是否顺序和对应位置上的元素都一样

scan函数:用法同 fold,scan会把每一步的计算结果放到一个新的集合中返回,而 fold 返回的是单一的值

scanLeft函数:从左向右计算

scanRight函数:从右向左计算

segmentLength函数:从序列的 from 处开始向后查找,所有满足 p 的连续元素的长度

seq函数:产生一个引用当前序列的 sequential 视图

size函数:序列元素个数,同 length

slice函数:取出当前序列中,from 到 until 之间的片段

sliding函数:从第一个元素开始,每个元素和它后面的 size - 1 个元素组成一个数组,最终组成一个新的集合返回,当剩余元素不够 size 数,则停止

sliding函数:从第一个元素开始,每个元素和它后面的 size - 1 个元素组成一个数组,最终组成一个新的集合返回,当剩余元素不够 size 数,则停止 \n该方法,可以设置步进 step,第一个元素组合完后,下一个从 上一个元素位置+step后的位置处的元素开始

sortBy函数:按指定的排序规则排序

sortWith函数:自定义排序方法

sorted函数:使用默认的排序规则对序列排序

span函数:分割序列为两个集合,从第一个元素开始,直到找到第一个不满足条件的元素止,之前的元素放到第一个集合,其它的放到第二个集合

splitAt函数:从指定位置开始,把序列拆分成两个集合

startsWith函数:从指定偏移处,是否以某个序列开始

startsWith函数:是否以某个序列开始

stringPrefix函数:返回 toString 结果的前缀

subSequence函数:返回 start 和 end 间的字符序列

sum函数:序列求和,元素需为Numeric[T]类型

tail函数:返回除了当前序列第一个元素的其它元素组成的序列

take函数:返回当前序列中前 n 个元素组成的序列

takeRight函数:返回当前序列中,从右边开始,选择 n 个元素组成的序列

takeWhile函数:返回当前序列中,从第一个元素开始,满足条件的连续元素组成的序列

toArray函数:转换成 Array 类型

toBuffer函数:转换成 Buffer 类型

toIndexedSeq函数:转换成 IndexedSeq 类型

toIterable函数:转换成可迭代的类型

toIterator函数:转换成可迭代的类型

toList函数:转换为List类型

toMap函数:同 Map 类型,需要被转化序列中包含的元素时 Tuple2 类型数据

toSeq函数:

toSet函数:

toStream函数:

toVector函数:

transpose函数:矩阵转换,二维数组行列转换

union函数:联合两个序列,同操作符 ++

unzip函数:将含有两个元素的数组,第一个元素取出组成一个序列,第二个元素组成一个序列

unzip3函数:将含有三个元素的三个数组,第一个元素取出组成一个序列,第二个元素组成一个序列,第三个元素组成一个序列

update函数:将序列中 i 索引处的元素更新为 x

updated函数:将序列中 i 索引处的元素更新为 x ,并返回替换后的数组

view函数:返回 from 到 until 间的序列,不包括 until 处的元素

withFilter函数:根据条件 p 过滤元素

zip函数:将两个序列对应位置上的元素组成一个pair序列

zipAll函数:同 zip ,但是允许两个序列长度不一样,不足的自动填充,如果当前序列端,空出的填充为 thisElem,如果 that 短,填充为 thatElem

zipWithIndex函数:序列中的每个元素和它的索引组成一个序列
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/weixin_53898747/article/details/129997811

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值