scala学习中遇到的问题

本文介绍了Scala中List的基本操作,包括高阶函数的概念及其应用(map、flatMap、foreach、filter),ListBuffer与ArrayBuffer的使用特点,以及Scala中常用的列表操作符和函数(map、reduce、filter等)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么scala中的高阶函数

所谓一阶函数就是函数的参数不是函数,而是普通的变量;所谓高阶函数就是函数的参数是函数,此时认为函数是高阶函数。

用+=可以向集合当中添加具体的元素,用++=可以向集合当中添加具体的集合(List或者Array)。

3、简述List中的map、flatMap、foreach、filter的具体用法

1>map就是对集合中的所有元素执行一个具体的函数,将函数作用在数值上,并返回一个新的集合结果

2>flatMap:首先对List内部的每个成员进行map操作,然后在产生结果的基础上 进行flat–将map操作后的结果进行合并,产生合并之后的集合。

简单来说:flatMap首先执行map操作,然后对产生集合的结果进行合并,合并出一个新的集合结果

3>foreach:就是对集合中的每一个元素执行一个具体的函数,将函数作用在数值上,与map不同的是,foreach不产生具体的 结果,结果是Unit类型的。

4>filter:过滤出列表中符合条件的元素,filter结构中传进来的参数是一个结构为布尔类型的函数

4 scala学习之ListBuffer、ArrayBuffer、Queue、Stack

ListBuffer、ArrayBuffer分别是List与Array的新版本,在ListBuffer、ArrayBuffer中可以对List与Array进行更加灵活、高效的操作
Queue(对列)与Stack(堆)是两种经典的数据结构。

5.scala中的常用操作符(操作符其实也是函数)

++ ++B: List[B] 从列表的尾部添加另外一个列表

++: ++:B >: A, That(implicit bf: CanBuildFrom[List[A], B, That]): That 在列表的头部添加一个列表
+: +:(elem: A): List[A] 在列表的头部添加一个元素
:+ :+(elem: A): List[A] 在列表的尾部添加一个元素
:: ::(x: A): List[A] 在列表的头部添加一个元素
::: :::(prefix: List[A]): List[A] 在列表的头部添加另外一个列表
提示: 这里给大家一个提示,任何以冒号结果的操作符,都是右绑定的,即 0 :: List(1,2,3) = List(1,2,3).::(0) = List(0,1,2,3) 从这里可以看出操作::其实是右边List的操作符,而非左边Int类型的操作符

6.scala中常用函数与变换

map、flatMap, flatten;

reduce,reduceLeft,reduceRight;

fold,foldLeft,foldRight;

sortBy,sortWith,sorted;

filter, filterNot

count;

diff, union, intersect,distinct;

groupBy, grouped;

scan,scanLeft,scanRight;

take,takeRight,takeWhile;

drop,dropRight,dropWhile;

span, splitAt, partition;

padTo;

combinations,permutations;

zip, zipAll, zipWithIndex, unzip,unzip3;

slice;

sliding;

updated;


(后续继续更新。。。。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值