上次看到一题目,给出一个文件夹 文件夹名为root, 要求找到文件夹里面最大的文件。
第一个反应就是用深搜, 下面给出java代码.
public static void main(String[]args)
{
File file = new File("E://root");
System.out.println(getMaxFile(file.lsitFiles,0L));
}
public static long getMaxFile(File[]files, long max){
for(File file: files){
if(file.isDirectoy){ //判断是否为文件夹,如果是继续往下搜索
long m=getMaxFile(file.listfiles(),max);
max=max>m? max:m;
}else{
if(file.length>max){ //如果当前文件长度大于已经获取的文件夹长度
max=file.length();
System.out.println(file.getAbsolutePath());
}
}
}
return max;
}