大数据系列修炼-Scala课程21
来源:互联网 发布:手机翻译软件推荐 编辑:程序博客网 时间:2024/05/18 03:12
核心内容:
1、scala中的部分应用函数实战解析
1、scala中部分应用函数实战解析
1>部分应用函数只是在“已有函数”的基础上,提供部分默认参数,未提供默认参数的地方使用下划线替代,从而创建出一个“函数值”,在使用这个函数值(部分应用函数)的时候,只需提供下划线部分对应的参数即可。
2>部分应用函数是缺少部分参数的的函数,是一个逻辑上的概念.
3>部分应用函数本质上是一种值类型的表达式,在使用的时候不需要提供所有的参数,只需要提供部分参数
4>在部分应用函数中,使用_可以代表单个参数或者全部参数列表
5>部分应用函数的内部实现:scala编译器会根据部分应用函数的表达式,自动生成一个类的实例对象,并在这个实例对象中含有相应参数个数的apply方法,其中apply方法可以理解为本地函数的应用.
实例程序:
package IT04import scala.io.Source//本次程序的目的是测试部分应用函数的应用object App { def main(args:Array[String]):Unit= //main函数的形式参数是一个字符串数组 { def sum(x:Int,y:Int,z:Int) = x + y + z val aa = sum(10,20,30) val bb = sum _ println(aa) //60 println(bb(10,20,30)) //60 val cc = sum(_:Int,_:Int,30) println(cc(10,20)) //60 val dd = sum(_:Int,20,30) println(dd.apply(10)) //60--apply方法可以理解为sum函数的本地函数 println(dd(10)) //60 println("apply方法可以理解为本地函数的应用!") val array = Array(10,20,30) array.foreach { x => println(x) } array.foreach(println _) //用下划线代表整个参数列表 array.foreach(println) } }
如有问题,欢迎留言指教!
1 0
- 大数据系列修炼-Scala课程21
- 大数据系列修炼-Scala课程01
- 大数据系列修炼-Scala课程02
- 大数据系列修炼-Scala课程03
- 大数据系列修炼-Scala课程04
- 大数据系列修炼-Scala课程05
- 大数据系列修炼-Scala课程06
- 大数据系列修炼-Scala课程07
- 大数据系列修炼-Scala课程08
- 大数据系列修炼-Scala课程09
- 大数据系列修炼-Scala课程10
- 大数据系列修炼-Scala课程11
- 大数据系列修炼-Scala课程12
- 大数据系列修炼-Scala课程15
- 大数据系列修炼-Scala课程17
- 大数据系列修炼-Scala课程18
- 大数据系列修炼-Scala课程19
- 大数据系列修炼-Scala课程20
- 阅读郭林《第一行代码》的笔记——第5章 全局大喇叭,详解广播机制
- Linux+tomcat 验证码无法显示
- vim插件和配置
- 禁用系统的Ctrl+Alt+Left/Right(方向键)
- Ubuntu下JNI的使用
- 大数据系列修炼-Scala课程21
- 有趣的算法-旋转字符串
- ci 学习笔记
- 笑笑
- LeetCode 203. Remove Linked List Elements
- git删除分支
- VS2010每次编译都重新编译整个工程的解决方案 仅编译修改过的
- Eclipse打开当前文件所在文件夹--模拟MyEclipse的Open in explorer 功能
- C语言入门-第一周:作业01