lambda 表达式最大的用处就是简写代码
在需要降低代码之间的耦合性和侵入性较多使用匿名内部类来解决这一问题,我们使用lambda表达式可以将匿名内部类最大程度的简写,
除此之外lambda表达式的作用就是让你的代码变得更加优雅
//文件过滤器 filter,过滤一个name中contains"o"的文件
FileFilter filter = new FileFilter() {
public boolean accept(File file) {
return file.getName().contains("o");
}
};
当实现的接口中有FunctionnalInterface(函数式接口)的标记时,则表明这个代码可以使用lambda表达式,
一个lambda表达式的可以有三种写法
//省略参数列表之前
Filefilter filter=(file)->{
return file.getname().contains("o")
};
//只有一个参数,可以省略参数小括号
Filefilter filter=file->{
return file.getname().contains("o")
};
//方法体只有一句时,可以省略大括号以及return
Filefilter filter=file->
file.getname().contains("o");