递归算法,说白了就是自己调用自己。
实际开发最常见的例子就是获取某个文件夹下的所有文件。本人一向喜欢用代码诠释思想,本次也不例外。同时下面的代码也是一个工具类,即:获取某个文件夹下所有文件名的工具类。
import java.io.File;
public class FileUtil {
public static void readFiles(File file) {
if(file.isDirectory()) {
File[] files = file.listFiles();
for(int i = 0; i < files.length; i++) {
if(files[i].isDirectory()) {
readFiles(files[i]);
}
System.out.println(files[i].getAbsolutePath());
}
}
}
public static void main(String[] args) {
//这里使用反斜杠,windows和linux都认识。
File file = new File("G:/图片/ico图标");
readFiles(file);
}
}