package S2.IO; import java.io.File; import java.util.Scanner; /* 制作一个全盘的搜索器 */ public class qunapan2 { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (true) { System.out.println("请输入你要查询的目录:");//格式为:D:\,仅供参考,以这个格式在控制台输入 String s = in.next(); File f = new File(s); if (f.isDirectory()) {//如果输入的不文件格式则提示输入错误,如果输入正确则读取完后可以继续输入想要查询的盘 print(f); } else { System.out.println("输入错误"); } } } /* 递归的调用,递归的主要优点在于: 某些类型的算法采用递归比采用迭代算法要更加清晰和简单。例如快速排序算法按照迭代方法是很难实现的。还有其他一些问题,特别是人工智能问题,就依赖于递归提供解决方案。最后,有些人认为递归要比迭代简单。 */ public static void print(File file){ if (file!=null){ if (file.isDirectory()){ File[] files=file.listFiles(); if (files!=null){ for (int i=0;i<files.length;i++){ print(files[i]); } System.out.println(file); } } } } }