//使用递归
public static void getDirByRecur(File dir) {
File[] childDirs=dir.listFiles();
if(childDirs==null) {
return;
}
for (File childDir : childDirs) {
System.out.println(childDir.getName());
if(childDir.isDirectory())
getDirByRecur(childDir);
}
}
//使用队列
public static void getDir(File dir) {
Queue<File> queue=new LinkedList<>();
queue.add(dir);
while(!queue.isEmpty()) {
File topdir=queue.remove();
System.out.println(topdir.getName());
if(topdir.isDirectory()) {
File[] childDirs=topdir.listFiles();
if(childDirs!=null) {
for (File childDir : childDirs) {
queue.add(childDir);
}
}
}
}