Scala入门基础(10)高级函数

一.什么是高阶函数

二.map函数

三.foreach函数

四.filter函数

五.flatten函数

正文:

一.什么是高阶函数

高阶函数:是一个特殊的函数,特殊之处在于:它指使用其他函数作为参数或返回值

(演示)

二.map函数

map函数:映射,给我一个值,我给你变成另一个值。y=x*2

map函数需要一个额外的函数作为参数,所以它是一个高阶函数

演示)

练习1.把1,2,3,4,5,6变成1,4,9,16,25,36

演示)

var arr2 =arr1.map(x => x * x)

练习2.把-1,2,-3,-4变成1,2,3,4输出数的绝对值

演示)

var arr2 =arr1.map(x => if(x>0) x else -x)

三.foreach函数

foreach 对数组的每一个元素都去执行一次函数

它与map的区别在于,没有返回值!

演示)

四.filter函数

filter过滤:对每一个元素执行函数,如果返回true,就把该元素保留下。返回一个新的数组

演示)

练习1.去掉不及格的分数(60,59,80,70)-->(60,80,70)

演示)

var re = Array(60,59,80,70).filter(x => x>=60)

五.flatten函数

flatten作用:把二维数组转成一维

注意:调用时不要加()

演示)

相关推荐
用户288391927474 分钟前
Elasticsearch DSL:用 Python 对象写查询,不用再手写 JSON
前端
一拳小和尚LXY41 分钟前
我开发了一款免费 Chrome 插件 TabScribe:一键复制所有标签页为 Markdown/JSON,完全离线零追踪
前端·chrome·json
dust_and_stars42 分钟前
ubuntu24上安装chrome和edge浏览器
前端·chrome·edge
恋猫de小郭42 分钟前
Android 官方给 Compose 搞了个不需要 UI 环境的 Composable
android·前端·flutter
老王以为1 小时前
我的多屏编程工作流:从切窗口到空间锚定
前端
夕除1 小时前
shizhan--10
java·开发语言
Zhang~Ling1 小时前
C++ 红黑树封装:myset和mymap的底层实现
开发语言·数据结构·c++·算法
旺王雪饼 www1 小时前
localStorage 和 sessionStorage区别与联系
服务器·前端·javascript
原来是猿1 小时前
为什么 C++ 需要区分左值和右值?
开发语言·c++
xier_ran1 小时前
【infra之路】PagedAttention
java·开发语言