scala 学习(十六)——闭包和柯里化
2016-12-28 15:19
218 查看
scala 学习(十六)——闭包和柯里化
下面是闭包和柯里化的例子程序://变量不在作用域时函数仍然可以调用 object main{ def main(args:Array[String]){ //闭包 def mulby(factor:Double) = (x:Double) => x * factor var a = mulby(3) var b = mulby(0.5) println(a(2) + b(9)) println("==========") //currying 柯里化 //将函数中的两个函数变为一个函数,并且把原来函数的第二个参数当做参数 def add(a:Int) = (b:Int) => a+b var temp = add(1)(2) println(temp) println("==========") //简单定义柯里化 def addnew(a:Int)(b:Int) = a+b var cc = addnew(12)(22) println(cc) println("==========") //柯里化的简单应用 def trimul(a:Int)(b:Int)(c:Int) = a * b * c var tries = trimul(2)(4)(5) println(tries) } }
运行结果:
相关文章推荐
- scala学习笔记(十六) 类型参数与隐式转换
- scala学习笔记(6):闭包
- Scala学习(五)函数和闭包
- scala学习之偏函数与闭包
- Scala学习之函数和闭包
- Scala之 闭包和柯里化
- Scala学习笔记16【Scala闭包代码实例】
- Scala学习笔记——函数和闭包
- Scala学习笔记 --- 闭包理解
- 闭包 Scala学习笔记-面向对象篇
- scala学习手记30 - 闭包
- Scala学习之路 (七)Scala的柯里化及其应用
- Unmi 学习 Groovy 之闭包
- 设计模式学习笔记十六:代理模式(Proxy Pattern)
- Linux Socket学习(十六)
- Unmi 学习 Groovy 之闭包与资源、异常处理
- oracle9i学习笔记之十六 高级子查询
- BT源代码学习心得(十六):客户端源代码分析(实际数据的传输及其速率限制策略)
- C#学习笔记(十六):使用打开保存文件对话框
- Groovy学习笔记之块、闭包与函数