首页 > 其他 > 详细

Scala学习笔记-09-函数式编程-闭包

时间:2020-02-14 13:30:40      阅读:51      评论:0      收藏:0      [点我收藏+]

当函数的执行依赖于声明在函数外部的一个或多个变量时,则成这个函数为闭包。

scala> var sum = 0
sum: Int = 0

scala> val accumulator = (x:Int)=> sum += x //包含外部变量sum的闭包
accumulator: Int => Unit = <function1>

scala> accumulator(5)

scala> sum
res26: Int = 5
  •  闭包可以捕获闭包之外的自由变量的变化
  • 被闭包捕获的变量的改变,在闭包之外也可见

 

----

Scala学习笔记-09-函数式编程-闭包

原文:https://www.cnblogs.com/wooluwalker/p/12307018.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!