上面的代码用下面一行就表示出来了(可以先复习之前的接口)
lambda又叫匿名函数,接下来就让我们来解析一下lambda表达式
对比:
这是一个打印的代码,没有使用到lambda表达式
那么什么是lambda表达式呢?
上图可以看出,lambda表达式表达的是接口的匿名实现类,简化了函数的一些东西
简化了什么呢?
第一个是这个参数,就是可以把参数写到我们的左侧 "->"然后用括号括起来,然后函数体写到“->”右侧,用{}括起来,中间就是接口方法实现的方法体
总结:实际上,lambda表达式就是实现了我们的这样一个接口
接下来我们要进一步简化我们的lambda
第一步简化:可以去掉参数类型,java会根据接口的定义,返回值的定义和参数类型的定义,自动的判断出我们参数的类型
第二步:当我们只有一个参数的时候,可以把()去掉
第三步:如果函数体只有一行,可以去掉花括号
第四步:把这个代码,放入到我们的方法对应的参数位置上去
在代码中我们可以发现,这个接口在一个类中,这又有什么优点呢?