Spark基础-Scala高阶函数
2017-08-20 23:22
267 查看
核心
1、scala高阶函数
1、scala高阶函数
package com.xlucas /** * Created by xlucas on 2017/8/20 0020. * * 1、函数和变量一样作为scala语言的一等公民,函数可以直接赋值给变量 * 2、函数更多的方式是匿名函数,定义的时候只需要说明输入参数的类型和函数体即可 * 3、函数可以作为参数直接传递给函数,函数作为函数的参数传递的编程方式是称之为高阶函数 * 4、函数式编程的返回值可以是函数,当函数的返回值是函数的时候,这个时候就表明scala的函数实现了闭包 * 闭包的内幕是:scala的函数背后是类和对象,所以scala的参数作为了对象的成员,后续可以继续访问 * 5、复杂的函数式编程中经常使用,可以维护变量在内存中的状态,实现返回函数的链式功能 */ object FunctionOop { def main(args: Array[String]): Unit = { val say=sayHello _ //这个需要用_符合来赋值操作 say("spark") val f=(name:String)=>println("hi" +name)//匿名函数 f("spark") def getName(func:(String)=>Unit,name:String): Unit ={//函数做为参数 func(name) } getName(f,"scala") Array(1 to 10: _* ).map{(item:Int)=>2*item}.foreach{x=>println(x)}//数组来做为输入在操作 def funResult(message:String)=(name:String)=>println(message+" :" +name) funResult("hello")("java")// currying 函数写法 柯里化 } def sayHello(name:String): Unit ={ println("hi" + name) } }
相关文章推荐
- spark快速开发之scala基础之5高阶函数,偏函数,闭包
- scala基础26-高阶函数
- Spark基础transformation操作实例(Scala版)
- 第4课:零基础彻底实战Scala控制结构及Spark源码解析
- Spark基础-Scala学习1
- Spark基础-Scala集合操作
- 快学Spark 2.0(新特性、含真实项目、纯Scala语言开发、CDH5.7) 分享下载地址——https://pan.baidu.com/s/1jHVvIAi 密码: sirk 本课程从基础开
- spark基础(二)-----------scala在spark shell里的应用
- Spark基础-Scala模式匹配
- scala基础5⃣️高阶函数
- 第6课 :零基础实战Scala集合操作及Spark源码解析
- Spark基础排序+二次排序(java+scala)
- 学习spark系列---scala 编程基础
- Spark 基础 —— Scala 集合
- 第7课:零基础实战Scala面向对象编程及Spark源码解析
- spark快速开发之scala基础之2控制流程
- Spark入门到精通视频学习资料--第一章、Scala基础与实践
- 第8课:零基础实战Scala最常用数据结构Map和Tuple及Spark源码鉴赏
- spark快速开发之scala基础之3类,对象,特征
- Spark基础-Scala集合的操作