Scala 闭包
2015-12-12 21:37
211 查看
1、代码
package com.yy.base
/**
* 闭包
*/
object ClosureTest {
def main(args: Array[String]): Unit = {
//more是一个自由变量,其值及类型是在运行的时候得以确定的
//x是类型确定的,其值是在函数调用的时候被赋值的
//这样的函数称之为闭包:从开放到封闭的过程
def add(more:Int) = (x:Int) => x+ more
//给more赋值
val add1 = add(1)
//调用add函数
println(add1(100))
}
}
2、运行结果如下
101
package com.yy.base
/**
* 闭包
*/
object ClosureTest {
def main(args: Array[String]): Unit = {
//more是一个自由变量,其值及类型是在运行的时候得以确定的
//x是类型确定的,其值是在函数调用的时候被赋值的
//这样的函数称之为闭包:从开放到封闭的过程
def add(more:Int) = (x:Int) => x+ more
//给more赋值
val add1 = add(1)
//调用add函数
println(add1(100))
}
}
2、运行结果如下
101
相关文章推荐
- 深入理解PHP之匿名函数
- Windows下Scala环境搭建
- Ruby中使用Block、Proc、lambda实现闭包
- LUA中的闭包(closure)浅析
- Lua中的闭包学习笔记
- C#中函数的创建和闭包的理解
- 深入理解javascript作用域和闭包
- javascript作用域和闭包使用详解
- 谈谈JavaScript中的函数与闭包
- 细品javascript 寻址,闭包,对象模型和相关问题
- JavaScript中的闭包原理分析
- 浅谈javascript中的闭包
- 学习javascript的闭包,原型,和匿名函数之旅
- javascript 闭包详解
- JavaScript 匿名函数和闭包介绍
- JavaScript 闭包深入理解(closure)
- 深入理解JavaScript 闭包究竟是什么
- JavaScript中的闭包(Closure)详细介绍
- 采用自执行的匿名函数解决for循环使用闭包的问题
- javascript闭包的理解