大数据scala语言不仅可以在函数中嵌套函数,还可以定义偏函数。
def sum(a :Int,b:Int,c:Int) = a+b+c
val pld = sum _
println(pld(1,2,3))
println(pld.apply(1, 2, 3))
val ped = sum(1,_:Int,3)
println(ped(2))
println(ped.apply(2))
val add = (x : Int)=> x+2
println(add.apply(3))
定义偏函数是在函数名后加空格和下划线,并赋值给一个常量或变量 val pld = sum _ 这种偏函数定义的时候没有指定任何一个参数,意味着在使用这个偏函数的时候要传递所有参数。还有一种是在定义偏函数的时候指定其中几个参数值,在使用的时候只需要传递没指定的参数
val ped = sum(1,_:Int,3)
println(ped(2))
在定义这个偏函数的时候根据参数产生了一个队员的apply方法,所以直接调apply方法也是可以的 add.apply(3)
王家林的第一个中国梦:免费为全社会培养100万名优秀的大数据从业人员!
您可以通过王家林老师的微信号18610086859发红包捐助大数据、互联网+、O2O、工业4.0、微营销、移动互联网等系列免费实战课程, 目前已经发布的王家林免费视频全集如下:
1,《大数据不眠夜:Spark内核天机解密(共100讲)》:http://pan.baidu.com/s/1eQsHZAq
2,《Hadoop深入浅出实战经典》http://pan.baidu.com/s/1mgpfRPu
3,《Spark纯实战公益大讲坛》http://pan.baidu.com/s/1jGpNGwu
4,《Scala深入浅出实战经典》http://pan.baidu.com/s/1sjDWG25
5,《Docker公益大讲坛》http://pan.baidu.com/s/1kTpL8UF
6,《Spark亚太研究院Spark公益大讲堂》http://pan.baidu.com/s/1i30Ewsd
7,DT大数据梦工厂Spark、Scala、Hadoop的所有视频、PPT和代码在百度云网盘的链接:
http://pan.baidu.com/share/home?uk=4013289088#category/type=0&qq-pf-to=pcqq.group
王家林免费在51CTO发布的1000集合大数据spark、hadoop、scala、docker视频:
1,《Scala深入浅出实战初级入门经典视频课程》http://edu.51cto.com/lesson/id-66538.html
2,《Scala深入浅出实战中级进阶经典视频课程》http://edu.51cto.com/lesson/id-67139.html
3,《Akka深入浅出实战经典视频课程》http://edu.51cto.com/lesson/id-77672.html
4,《Spark亚太研究院决胜大数据时代公益大讲堂》http://edu.51cto.com/lesson/id-30815.html
5,《云计算Docker虚拟化公益大讲坛 》http://edu.51cto.com/lesson/id-61776.html
6,《Spark 大讲堂(纯实战手动操作)》http://edu.51cto.com/lesson/id-78653.html
7,《Hadoop深入浅出实战经典视频课程-集群、HDFS、Yarn、MapReduce》http://edu.51cto.com/lesson/id-77141.html
8,《从技术角度思考Hadoop到底是什么》http://edu.51cto.com/course/course_id-1151.html
“DT大数据梦工厂”团队第一个中国梦:免费为社会培养100万名优秀的大数据从业人员。每天早上4点起持续分享大数据、互联网+、O2O、工业4.0、微营销、移动互联网等领域的
精华内容,帮助您和公司在DT时代打造智慧大脑,将生产力提高百倍以上!
DT大数据梦工厂微信公众号:DT_Spark,二维码如下,期待大家加入!