处理文件在递归中的使用?

import java.io.File;


/**
 * 删除目录下所有的文件和文件夹
 * @author phoebe
 *
 */
public class Recursion {
    public static void main(String[] args) {
        Recursion.delDirectory(new File("e://aa"));
    }
    /**
     * @param dir
     * 思想:方法递归相当于是方法里套方法,那么当前方法里的变量和上一层的变量不冲突
     */
    public static void delDirectory(File dir){
        if(dir.isDirectory()){//是目录进来
            String[] list = dir.list();//将此目录展开成字符串路径数组
            for(int i=0;i<list.length;i++){//循环依次拿到当前的文件
                delDirectory(new File(dir,list[i]));//递归
            }
        }
        
        /**
         * sub:此处既删文件也删文件夹
         * 1.删文件:if条件判断不是目录
         * 2.删文件夹:当前dir递归完了之后删除文件夹
         */
        dir.delete();
    }
}

//来个图帮助理解下















Best Regards
原文地址:https://www.cnblogs.com/pecool/p/8034614.html