深圳大数据学习:高阶函数--【千锋】
深圳大数据学习:高阶函数–【千锋】
1.1. 概念
如果一个函数的传入参数为函数或者返回值是函数,则该函数即为高阶函数。
1.2. 传入参数为函数
Scala中,函数是头等公民,和数字一样。不仅可以调用,还可以在变量中存放函数,也可以作为参数传入函数,或者作为函数的返回值。
1.3. 传入参数为匿名函数
在Scala中,你不需要给每一个函数命名,就像不必给每个数字命名一样,将函数赋给变量的函数叫做匿名函数
还可以
1.4. 传入参数为方法(隐式转换方法到函数)
在Scala中,方法和函数是不一样的,最本质的区别是函数可以做为参数传递到方法中
case class WeeklyWeatherForecast(temperatures: Seq[Double]) {
private def convertCtoF(temp: Double) = temp * 1.8 + 32
//方法convertCtoF作为参数传入
def forecastInFahrenheit: Seq[Double] = temperatures.map(convertCtoF)
}
1.5.返回值为函数
//返回值为函数类型:(String, String) => String
def urlBuilder(ssl: Boolean, domainName: String): (String, String) => String = {
val schema = if (ssl) “https://” else “http://”
(endpoint: String, query: String) => s" s c h e m a schema schemadomainName/ e n d p o i n t ? endpoint? endpoint?query"
}
val domainName = “www.example.com”
def getURL = urlBuilder(ssl=true, domainName)
val endpoint = “users”
val query = “id=1”
val url = getURL(endpoint, query) // “https://www.example.com/users?id=1”: String
深圳大数据学习:高阶函数--【千锋】相关推荐
- 深圳大数据学习:泛型 --【千锋】
深圳大数据学习:泛型 --[千锋] 带有一个或多个类型参数的类是泛型的. 泛型类的定义: //带有类型参数A的类定义 class Stack[A] { private var elements: Li ...
- 深圳大数据学习:方法的嵌套--【千锋】
深圳大数据学习:方法的嵌套–[千锋] 方法里嵌套定义其他方法 示例1 object EmbedDemo { def add3(x:Int,y:Int,z:Int)={ def add2(x:Int,y ...
- 深圳大数据学习:Scala系列之文件以及正则表达式
深圳大数据学习:Scala系列之文件以及正则表达式 7.1 读取行 导入scala.io.Source后,即可引用Source中的方法读取文件信息. import scala.io.Source ob ...
- 深圳Python培训学习:Python3 简介--[千锋]
深圳Python培训学习:Python3 简介–[千锋] Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文 ...
- python学习-高阶函数(函数传参、返回函数(闭包)、匿名函数lambda)
文章目录 高阶函数 函数传参 返回函数(闭包) 匿名函数lambda 高阶函数 定义: 至少满足下列一个条件: 接受一个或多个函数作为输入 输出一个函数 python里的高阶函数有 filter.ma ...
- Kotlin 学习 高阶函数
摘自第一行Android代码第3版 定义 如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个和函数,那么该函数就称为高阶函数 // 语法示例 (String,Int) -> Unit ...
- python学习总结1—高阶函数
python 高阶函数学习 高阶函数 介绍python 高阶函数的使用方法 map/reduce函数 map函数 利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字. ...
- c2064 项不会计算为接受0个参数的函数_【JS必知必会】高阶函数详解与实战
本文涵盖 前言 高级函数概念 函数作为参数的高阶函数 map filter reduce sort详解与实战 函数作为返回值的高阶函数 isType函数与add求和函数 如何自己创建高阶函数 前言 一 ...
- react中高阶函数与高阶组件的运用—(上)(案例详细解释高阶函数)
前言 学习react的同学多多少少对高阶组件有所耳闻,想要学好高阶组件就必须先学好高阶函数的运行,本篇文章就先从高阶函数着手,带大家学习高阶函数和高阶组件的运用 高阶函数 高阶函数(High Orde ...
最新文章
- 重磅!「肠道菌群」项目征集,百万科研经费助力细分领域全新突破
- opencv_contrib编译失败解决方法
- python_控制台输出带颜色的文字方法
- python测试开发自学教程-【光荣之路】Python全栈测试开发课程
- 国家哀悼日网站变灰的样式
- Linkis源码目录结构详解
- java oca_OCA第6部分中的Java难题
- jquery table ajax,JQuery Ajax动态加载Table数据的实例讲解
- 关于eclipse的indigo版中文注释时字体太小的问题(转)
- 【opencv】【mediapipe】手势检测的有趣玩法
- kuboard使用mysql_基于 Kubernetes 的微服务图形化管理界面 Kuboard
- Python读写Excel文件中指定区域单元格内容
- linux 中两个文档怎么对比内容是否一致
- 基于STM32的光照度自动调节系统
- Pytorch笔记:风格迁移
- Substrate 基础 -- 教程(Tutorials)
- codeforces 332b Maximum Absurdity dp
- 查看word的版本型号
- 丹佛斯变频器al13故障_丹佛斯变频器常见故障维修
- Web前后端缓存技术