* FilenameFilter:文件名称过滤器(接口)
* public boolean accept(File dir,String name)
* 判断当前是否将该name文件名添加到文件列表中
* public String[] list(FilenameFilter filter)
* public File[] listFiles(FilenameFilter filter)
* 形式参数是一个接口类型,需要该接口的子实现类对象/接口的匿名内部类
*
* 需求:获取D盘下所有带后缀名为".jpg"的文件,输出
public class FileTest2 {
public static void main(String[] args) {
//表示D盘
File file=new File("D:\\");
// public File[] listFiles(FilenameFilter filter)
File[] fileArray=file.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
//返回值是true还是false,取决于逻辑判断
// true:将文件名称添加到File列表
//加入逻辑判断
File file =new File(dir,name);
//分步走
/*
boolean flag1=file.isFile();//判断File列表是否是文件
boolean flag2=file.getName().endsWith(".jpg");
return flag1 && flag2;
*/
// 一步走
return (file.isFile()&& file.getName().endsWith(".jpg"));
}
});
// 遍历
for(File f:fileArray) {
if(f!=null) {
System.out.println(f.getName());
}
}
}
}