java8中也有匿名函数
Lambda表达式
匿名函数:函数本身没有任何名称,名字,他比较简洁
Lambda表达式怎么用
类型可以省略吗
还能进一步省略吗!
下面的不行
这个可以
在值的部分也可以给类型
闭包定义
在定义函数是出现了没有被定义的自由变量时,那就是一个闭包;其本质就是函数内部可以去调用函数外部的变量值,而且可以通过函数去改变外部的一些值。
一开始下面的more是自由变量,当它和函数在具体执行时会有相关值来绑定变量more,它由一个开放的变量转换为一个封闭的有具体值的变量。
闭包反映了从开放到封闭的过程!!!
var more = 1 ,这里more是一个自由值,当他结合了x+more,那就相当于x+1了,我们输入12,得到的addMore就是13,所以叫闭包。
每次创建都会形成新的闭包
如下,more的值不断在变