zoukankan      html  css  js  c++  java
  • 递归

    递归

    注意:

    • 递归不能没有结束条件,否则就会在栈内存中一直调用自己,这个方法就会一直压入栈空间出现栈内存异常溢出的异常
    • 递归的次数也不能太多,否则也会出现栈内存溢出
    • 构造方法禁止使用递归,编译报错,构造方法是创建对象的,一直递归回导致内存中有无数对象

    下面是递归计算累加的例子:

    递归遍历获取文件

    package cn.zhuobo.day13.recurison;
    
    import java.io.File;
    
    public class Demo01Recurison {
        public static void main(String[] args) {
            File file = new File("/home/zhuobo/Desktop/a");
            getAllFile(file);
        }
    
        public static void getAllFile(File dir) {
            System.out.println(dir);// 打印要遍历的问价夹
            File[] files = dir.listFiles();
            for (File file : files) {
                if(file.isDirectory()) {// 如果十个目录,那么就递归接着遍历
                    getAllFile(file);
                }
                else {
                    // 获取其中以txt结尾的文件
                    //System.out.println(file);
                    String name = file.getName();
    //                String name = file.getPath();
    //                String name = file.toString();
                    if(name.endsWith(".txt")){
                        System.out.println(file);
                    }
                }
            }
        }
    }
    

    a目录的文件:

    运行结果

    /home/zhuobo/Desktop/a/c/c.txt
    /home/zhuobo/Desktop/a/b/b.txt
    /home/zhuobo/Desktop/a/a.txt
    
  • 相关阅读:
    linux date使用
    SHELL输出带颜色字体
    vimrc配置
    你所不知道的C++
    temp
    说什么好呢3
    Extjs3 Combo实现百度搜索查询
    Extjs3笔记 fbar
    Extjs combo赋值与刷新的先后顺序
    sql中nvarchar(max)长度测试
  • 原文地址:https://www.cnblogs.com/zhuobo/p/10651066.html
Copyright © 2011-2022 走看看