刚刚了解了下递归思想

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

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

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();
}

这样子就死循环了

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

转载于:https://www.cnblogs.com/wewill/p/5588765.html

递归思想解决输出目录下的全部文件相关推荐

  1. python 递归目录_Python3:递归实现输出目录下所有的文件

    今天来整理一下os库中方法的使用,如何输出一个目录下的所有文件? 1.首先介绍几个基本的的方法: 1)os.getcwd()  #返回当前工作目录 2)os.listdir()    #返回一个列表, ...

  2. java 20 -3 递归之删除特定目录下的特定文件

    1 /* 2 需求:删除H:\demo目录下的带内容的文件 3 分析: 4 A:封装该目录 5 B:获取该目录下所有的文件或文件夹的File数组 6 C:遍历该File数组,获取每一个File对象 7 ...

  3. 【Java基础】递归输出目录下所有文件路径

    递归输出目录下所有文件路径 import java.io.File;public class FileTest {public static void main(String[] args) {// ...

  4. golang递归获取目录下的所有文件

    简言 1. golang为我们提供了完善的文件操作库,例如os,ioutil等 2. 前人已经写了文件操作的示例,具体可参考这篇博客 https://colobu.com/2016/10/12/go- ...

  5. 输出某个目录下的所有文件和文件夹,包括子文件夹中的内容

    IO流中File类中有个listFiles() 方法,它可以返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件.此时用这个方法来讲文件中的所有路径存储在一个数组中,在去判断这个数组中 ...

  6. Java 输出指定目录下的所有文件

    使用 File 类的 list 方法来输出指定目录下的所有文件 完整代码 class Main {public static void main(String[] args) {File dir = ...

  7. java 递归 遍历目录下的所有文件

    public class Demo{static int level;public static void main(String[] args) throws IOException {//利用递归 ...

  8. 递归 遍历目录下的所有文件

    public class Demo{static int level;public static void main(String[] args) throws IOException {//利用递归 ...

  9. /var/spool/clientmqueue目录下存在大量文件的原因及解决方法

    /var/spool/clientmqueue目录下存在大量文件的原因及解决方法 参考文章: (1)/var/spool/clientmqueue目录下存在大量文件的原因及解决方法 (2)https: ...

最新文章

  1. R语言return返回值的形式实战
  2. git远程仓库回退版本
  3. 《高可用MySQL》2 – 单机版MySQL主从配置
  4. linux重新设定分区大小
  5. hdu 2544(最短路)
  6. GET和POST的区别?
  7. atom n270 cpu linux,继续改造ATOM N270增加千兆口自制软路由
  8. 北京邮电大学计算机导论试题,2020年秋季《北京邮电大学网络教育》各种考试题目汇总.docx...
  9. 应用宝shangjia安全评估报告_腾讯应用宝市场的app 安全评估报告怎么写
  10. css字体毛边属性设置
  11. zabbix启动失败的排查记录
  12. 一周市场摘抄20210208
  13. css编辑器推荐-Stylizer 与 Stylizer破解
  14. PostgreSQL高可用中间件—Pgpool-Ⅱ
  15. 我的世界网易版服务器文件,我的世界网易版服务器怎么加材质包-我的世界网易版服务器如何加材质包...
  16. java 打印请求接口响应时间
  17. Solr in Action 第一章翻译(待整理)
  18. 多线程专题之线程死锁原因之谜
  19. 学习英文-学以致用【场景:美式音标】
  20. hadoop高可用三台

热门文章

  1. 虚方法的调用是怎么实现的(单继承VS多继承)
  2. 地址本在不同手机间的迁移
  3. 在 VMware ESXi 5.0 上安装万兆网卡驱动
  4. C语言运算符的优先级
  5. AjaxControlToolKit之DragPanelExtender用法
  6. Eclipse创建web工程时,报错Dynamic Web Module 3.0 requires Java 1.6 or newer.
  7. Hibernate是啥?
  8. EXT.JS的PROXY放在哪里,STORE放在哪里,绝对是个技术活儿啊。
  9. 记一次 MySQL 的慢查优化
  10. Oracle 中多个字段显示成一列