lambda表达式是JDK8之后推出的特性,是用精简的语法创建匿名内部类,但是要求匿名内部类中只有一个抽象方法
语法:
(参数列表)->{
方法体
}
当方法体只有一行时,可以省略"{}",并且一行是return时,要省略return
import java.io.File;
import java.io.FileFilter;
public class LambdaDemo {
//定义文件过滤器 匿名内部类写法
FileFilter filer = new FileFilter() {
@Override
public boolean accept(File pathname) {
return pathname.isFile();
}
};
//lambda表达式是编译器认可的,编译成字节码文件时会被编译器改回内部类创建
FileFilter filter1 = (File file)->{
return file.isFile();
};
//lambda表达式允许忽略参数类型
FileFilter filter = (file) ->{
return file.isFile();
};
//lambda表达式如果方法体只有一行代码,那么方法体的{}可以不写
//如果这句代码含有return,return要省略
FileFilter Filter3 = (f)->f.isFile();
}



