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作用:把二维数组转成一维
注意:调用时不要加()

演示)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/55174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux -- 初识动静态库

目录 为什么要有库? 静态库 什么是静态库? 特点 优点 缺点 动态库 什么是动态库? 优点 缺点 编译器会选择哪个库? 为什么要有库? 库的存在是为了提高软件开发的效率、促进代码复用以及简化维护工作。通过使用…

SpringSecurity(一)——认证实现

一、初步理解 SpringSecurity的原理其实就是一个过滤器链,内部包含了提供各种功能的过滤器。 当前系统中SpringSecurity过滤器链中有哪些过滤器及它们的顺序。 核心过滤器: (认证)UsernamePasswordAuthenticationFilter:负责处理…

js获取硬件设备

在Javascript中通过MediaDevices 的方法enumerateDevices() 请求一个可用的媒体输入和输出设备的列表,例如麦克风,摄像机,耳机设备等。返回的 Promise 完成时,会带有一个描述设备的 MediaDeviceInfo 的数组。通常你可以使用 navig…

python yolov8半自动标注

首先标注一部分图片,进行训练,生成模型,标注文件为xml方便后面统一做处理。 1、标注数据(文件为xml, 转为txt用于训练,保留xml标签文件) 2、模型训练(训练配置、训练代码、) 3、使用…

极狐GitLab 发布安全补丁版本 17.4.1、17.3.4、17.2.8

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 官网极狐…

[已解决]DockerTarBuilder永久解决镜像docker拉取异常问题

前阵子发现阿里云的docker加速镜像失效了(甚至连nginx都拉取不了),重新换了并且加多了网络上比较常用的dokcer加速源,可以解决一部分问题,但仍然有一些镜像的某个版本或一些比较冷的镜像就是拉取不了,原因未…

Multiprocessing出错没有提示was skipped without notice in python

这个问题可以通过打印返回结果解决。 解决方法 比如 Pool.apply_async(csdnKuangXiaoHU, args=(p, DestFile))改成 Result = Pool.apply_async(csdnKuangXiaoHU, args=

『网络游戏』数据库表格转储【25】

避免勿删数据库表格,可以将表格存储 放到桌面即可 现在将表格删除后点击 浏览桌面表格保存即可 修改客户端脚本:NetSvc.cs 目的是在数据库更新异常时弹出提示以便修改 本章结束

进程间通信、无名管道、有名管道

一、进程 1.1 进程间通信的概念 线程通信通过全局变量即可。 进程间通信是相互独立的,但是所有进程都共用一份内核空间,所以进程和进程之间的通信可以通过内核去进行。 1.2 进程间通信方式 共7种: 传统的进程间通信方式: 无名管道有名管道…

suspend、suspendCancellableCoroutine、continuation-kotlin协程

0.首先整理协程的启动方法 在 Kotlin 中,启动协程的方法有多种,常用的方法包括 launch、async、和 runBlocking。每种方法有不同的用途和特性。以下是它们的详细介绍: 1. launch launch 是一个启动新协程的方法,返回一个 Job 对…

uniapp生成随机数

推荐学习文档 golang应用级os框架,欢迎stargolang应用级os框架使用案例,欢迎star案例:基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识,这里有免费的golang学习笔…

深入理解C++ STL中的 vector

文章目录 1. vector 的概述1.1 vector 是什么?1.2 vector 的优点1.3 vector 的缺点 2. vector 的基本使用2.1 vector 的定义2.2 基本操作2.3 示例2.4 迭代器的使用 3. vector 的内部实现原理3.1 动态数组的实现3.2 内存管理3.3 内存扩展策略3.4 元素的插入与删除3.4…

VSCode 查看 Git 的历史记录的三种技巧

前言 在我们日常开发工作过程中,可能经常会看到一些离谱的历史代码,或者当项目发生线上事故时,如何快速定位是谁提交的代码导致的? 作为前端开发者,VSCode 是目前最为流行的代码编辑工具,也是日常最常打开…

服务器CUDA版本升级

https://blog.csdn.net/m0_52583356/article/details/138150039 上面这篇文章是按照显卡驱动所支持的最高cuda版本来更新cuda Toolkit的,但是如果你想要更新显卡驱动最高支持的CUDA版本,就需要更新显卡驱动了。 更新显卡驱动需要先卸载原有显卡驱动&am…

Vue中计算属性computed—(详解计算属性vs方法Methods,包括案例+代码)

文章目录 计算属性computed3.1 概述3.2 使用3.3 计算属性vs方法Methods3.4 计算属性的完整写法 计算属性computed 3.1 概述 基于现有的数据,计算出来的新属性。 依赖的数据变化,自动重新计算 语法: 声明在 computed 配置项中,…

OPC UA与PostgreSQL如何实现无缝连接?

随着工业4.0的推进,数据交换和集成在智能制造中扮演着越来越重要的角色。OPC UA能够实现设备与设备、设备与系统之间的高效数据交换。而PostgreSQL则是一种强大的开源关系型数据库管理系统,广泛应用于数据存储和管理。如何将OPC UA与PostgreSQL结合起来&…

python pip安装requirements.txt依赖与国内镜像

python pip安装requirements.txt依赖与国内镜像 如果网络通畅,直接pip安装依赖: pip install -r requirements.txt 如果需要国内的镜像,可以考虑使用阿里的,在后面加上: -i http://mirrors.aliyun.com/pypi/simple --…

基于System.js的微前端实现(插件化)

目录​​​​​​​ 写在前面 一、微前端相关知识 (一)概念 (二) 优势 (三) 缺点 (四)应用场景 (五)现有框架 1. qiankun 2. single-spa 3. SystemJ…

GO之流程控制

一、流程控制简述 一)流程控制的作用 流程控制语句是用来控制程序中语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑块 二)流程控制的分类 控制语句分为三类:顺序、选择和循环 顺序结构:依次执行&#xf…

通过Express + Vue3从零构建一个用户认证与授权系统(二)数据库与后端项目搭建与实现

前言 上一篇完成了系统的相关设计文档的编写,本文将详细介绍如何一步步使用 TypeScript 和 Express 搭建一个模块化、类型安全的用户认证与授权系统,包括数据库设计、后端项目搭建、用户认证、角色与权限管理、错误处理以及 Swagger 文档集成。 项目准…