什么是Lambda
lambda表达式 是一种没有名字的函数,也可以称为闭包,是java8的新特性。
本质就是一个匿名内部类。
为什么使用Lambda
因为它比匿名内部类更简单明了。只需要明确传入的参数的类型即可。将代码像数据一样进行传递,Lambda允许把方法作为一个参数,进行传递。
和匿名内部类对比
Lambda语法格式
左侧:指定了Lambda 表达式需要的参数列表
右侧:指定了Lambda 体,是抽象方法的实现逻辑,也即Lambda 表达式要执行的功能。
以集合数组排序为例说明1.7和1.8不同
如图所示,1.7我需要list1调用方法时需要写明匿名内部类。并按照需求调整返回值结果;很多行。
而利用1.8新特性就可以用37行的代码,表明传入两个list1数组中的参数,按升序返回即可。