zoukankan      html  css  js  c++  java
  • 递归思想解决输出目录下的全部文件

    刚刚了解了下递归思想

    递归就是在方法内调用本方法

    下面说一个实际的应用
    输出目录下的全部文件,当目录中还有目录时,则进入目录输出里面的文件

    import java.io.*;
    class ShowFile{
        public static void showfile(File files){
            if(files.isDirectory()){
                File[] list=files.listFiles();
                //防止抛出空指针异常
                try{
                for(File file:list){
                if(file.isDirectory()){
                //递归
                    showfile(file);
                }
                else{System.out.println(file.getAbsolutePath());}
            }}
                catch(NullPointerException x){
                System.out.println(files.getAbsolutePath());
    }
    }
            else{System.out.println(files.getAbsolutePath());}
    }
    }

    递归的时候要小心出现死循环

    void method(){
        mehtod();
    }

    这样子就死循环了

    运用递归思想,可以减小重复性代码的长度,作用和循环体差不多,但是能做循环体做不到的事

  • 相关阅读:
    java内存管理之内存模型
    HTTP协议
    12 数值的整数次方
    11 二进制中1的个数+二进制补充知识点
    10 矩形覆盖
    9 变态跳台阶
    8 跳台阶
    7斐波那契数列
    6旋转数组的最小数字
    5用两个栈实现队列
  • 原文地址:https://www.cnblogs.com/wewill/p/5588765.html
Copyright © 2011-2022 走看看