zoukankan      html  css  js  c++  java
  • 76.递归

    递归:函数自身调用函数自身

    使用递归的前提是要有条件结束这个自身调用(不然会出现死循环)

    public class Demo1 {
        public static void main(String[] args) {
            File file = new File("D:\新建文件夹");
            System.out.println(print1(5));
            print2(file,"");
            myDelete(file);
        }
        
        //计算出5的阶层(5*4*3*2*1)
        public static int print1(int num) {
            if(num==1) {
                return 1;
            }else {
                return num*print1(num-1);
            }
        }
        
        //打印文件夹的路径
        public static void print2(File file,String str) {
            //根据传入的路径获取所有文件
            File[] allFile = file.listFiles();
            //根据是文件夹还是文件不同的处理
            for (File itemp : allFile) {
                if(itemp.isFile()) {
                    System.out.println(str+itemp.getName());
                }else if(itemp.isDirectory()) {
                    System.out.println(str+itemp.getName());
                    print2(itemp,"--"+str);
                }
            }
        }
        
        
        //因为delete只能删除一个空的文件夹,所以我们可以根据递归删除所有文件
        public static void myDelete(File file) {
            //根据传入的路径获取所有文件
            File[] allFile = file.listFiles();
            //根据是文件夹还是文件不同的处理
            for (File itemp : allFile) {
                if(itemp.isFile()) {
                    itemp.delete();
                }else if(itemp.isDirectory()) {
                    myDelete(itemp);
                }
                file.delete();
            }
        }
    }

  • 相关阅读:
    php--有限继承
    面向对象三大特性(封装/继承/多态)
    定义文本溢出
    设计模式
    js数组sort方法
    鼠标移动事件
    单击事件
    数据类型转换与比较
    html主要笔记
    字符串常用的方法
  • 原文地址:https://www.cnblogs.com/zjdbk/p/9121625.html
Copyright © 2011-2022 走看看