设为首页 加入收藏

TOP

Java显示目录文件列表和删除目录
2018-01-01 06:06:57 】 浏览:181
Tags:Java 显示 目录 文件 删除

以d:\a目录为例,假设D:\a目录内的结构如下:


思路:
1.遍历目录d:\a。
2.每遍历到d:\a中的一个目录就遍历这个子目录。因此需要判断每个遍历到的元素是否是目录。


以下是从普通代码到递归代码前的部分代码:


对重复的代码部分进行封装,于是使用递归方法,既封装代码,又解决无限递归问题。最终代码如下:


思路:
1.遍历给定目录。将遍历到的目录名放进集合中。
2.对集合中的每个目录元素进行遍历,并将遍历到的子目录添加到集合中,最后每遍历结束一个目录就从集合中删除它。
3.这样一来,只要发现目录,就会一直遍历下去,直到某个目录整个都遍历完,开始遍历下一个同级目录。


需要考虑的是使用什么样的集合。首先集合内目录元素无需排序、不同目录内子目录名可能重复,因此使用List集合而非set集合,又因为频繁增删元素,因此使用linkedlist而非arraylist集合,linkedlist集合最突出的特性就是FIFO队列。


相比于递归遍历,使用队列遍历目录的好处是元素放在容器中,它们都在堆内存中,不容易内存溢出。


思路:
1.先列出一级目录和文件。
2.如果是目录,则加一个构成树形的前缀符号。然后再遍历这个目录,在此需要递归遍历。


结果如下:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java异常处理机制详述 下一篇Spring中四种实例化bean的方式

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目