老曹眼中的Lambda
“ λ ”像一个双手插兜儿,独自行走的人,有“失意、无奈、孤独”的感觉。λ 读作Lambda,是物理上的波长符号,放射学的衰变常数,线性代数中的特征值......在程序和代码的世界里,它代表了函数表达式,系统架构,以及云计算架构。
代码中的Lambda
Lambda表达式基于数学中的λ演算得名,可以看作是匿名函数,可以代替表达式,函数,闭包等,也支持类型推论,可以远离匿名内部类。
为什么使用Lambda呢?
代码更紧凑
拥有函数式编程中修改方法的能力
有利于多核计算
Lambda的目的是让程序员能够对程序行为进行抽象,把代码行为看作数据。
Java
Java 8的一个大亮点是引入Lambda表达式,在编写Lambda表达式时,也会随之被编译成一个函数式接口。
一个典型的例子是文件类型过滤 :
File dir = new File("/an/dir/