zoukankan      html  css  js  c++  java
  • 递归

    递归

      递归,就是在当前方法内调用自己的这种现象,也可以调用别的方法。

      实例:

        1.斐波那契数列的兔子  

    1 public static int rabbit(int n){
    2         if(n==1){
    3             return 1;
    4         }
    5         if(n==2){
    6             return 1;
    7         }
    8         return rabbit(n-1)+rabbit(n-2);
    9     }

        2. 遍历一个目录下所有文件夹和文件

          先定义一个类继承FilenameFilter过滤器接口:MyFilter.java 来判断是否有文件夹和文件

          然后获取该目录下所有文件和文件夹的File数组

          开始遍历,如果该file是文件夹则继续递归找到下一级的所有文件和文件夹,如果是文件直接打印输出

        部分代码展示:

    public static void get(File path){
            //获取该目录下所有文件和文件夹的File数组
            File[] files=path.listFiles(new MyNameFilter());
            //遍历
            for(File file:files){
                //如果该file是文件夹则继续递归找到下一级的所有文件和文件夹
                if(file.isDirectory()){
                    get(file);
                }else{
                    //如果是文件直接打印输出
                    System.out.println(file);
                }
            }
        }
    
    
    //MyFilter.java
    public boolean accept(File pathname) {
            //long length=pathname.length();
            if(pathname.isDirectory()){
                return true;
            }
            //return pathname.length()>200*1024;
            return pathname.getName().toLowerCase().endsWith(".txt");
        }

        

  • 相关阅读:
    JVM运行时数据区及对象在内存中初始化的过程
    一文搞懂List 、List<Object>、List<?>的区别以及<? extends T>与<? super T>的区别
    Java中创建泛型数组
    JavaBean详解
    Java常用命令及参数
    一文彻底搞懂Java中的环境变量
    类型信息
    java中的数组
    URL与URI的区别
    上行速率和下行速率
  • 原文地址:https://www.cnblogs.com/zhai113/p/11718922.html
Copyright © 2011-2022 走看看