day20/FileDemo3.java

来源:互联网 发布:ddos 阿里云 编辑:程序博客网 时间:2024/06/06 03:44
/*需求:列出指定目录下文件或者文件夹,包含子目录中的内容。也就是列出指定目录下的所有内容。因为目录中还有目录,只要使用同一个列出功能的函数完成即可。在列出过程中出现的还是目录的话,可以再次调用本功能。也就是函数自身调用自身。这种表现形式,或者编程手法,称为递归。递归要注意:1.限定条件2.要注意递归的次数,尽量避免内存溢出。*/import java.io.*;class FileDemo3 {public static void main(String[] args) {File dir = new File("e:\\javademo\\day18");showDir(dir);toBin(6);}public static void showDir(File dir){System.out.println(dir);File[] file = dir.listFiles();for(int x=0;x<file.length;x++){if(file[x].isDirectory()){//System.out.println(file[x]);showDir(file[x]);//递归调用}elseSystem.out.println(file[x]);}}//递归public static void toBin(int num){if(num>0){toBin(num/2);System.out.println(num%2);}}}/*递归思想:void showA(){void showB();sop(A)}void showB(){void showC();sop(B)}void showC(){sop(C)}CBA*//*E:\javademo\day20>java FileDemo3e:\javademo\day18e:\javademo\day18\CalendarDemo.javae:\javademo\day18\CalendarDemo1.javae:\javademo\day18\CalendarDemo2.javae:\javademo\day18\DateDemo.javae:\javademo\day18\day18_IOe:\javademo\day18\day18_IO\CopyTest.javae:\javademo\day18\day18_IO\FileReaderDemo.javae:\javademo\day18\day18_IO\FileReaderDemo1.javae:\javademo\day18\day18_IO\FileWriterDemo.javae:\javademo\day18\day18_IO\FileWriterDemo1.javae:\javademo\day18\day18_IO\FileWriterDemo2.javae:\javademo\day18\day18_IO\文件拷贝过程.bmpe:\javademo\day18\MathDemo.javae:\javademo\day18\MathDemo1.javae:\javademo\day18\MathDemo2.javae:\javademo\day18\MathDemo3.javae:\javademo\day18\MathTest.javae:\javademo\day18\RuntimeDemo.javae:\javademo\day18\SystemDemo.java110*/

0 0