1. 程式人生 > 其它 >Java遞迴遍歷資料夾檔案

Java遞迴遍歷資料夾檔案

遞迴概述:以程式設計的角度來看,遞迴指的是方法定義中呼叫方法本身的現象。
遞迴解決問題的思路:
  把一個複雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解;
  遞迴策略只需少量的程式就可以描述出解題過程所需要的多次重複計算。
遞迴解決問題要找到兩個內容:
①遞迴出口:否則會出現記憶體溢位;
②遞迴規則:與原問題相似的規模較小的問題。
問題:獲取桌面資料夾中所有檔名。

 1 import java.io.File;
 2 public class wenJian {
 3     public static void main(String[] args) {
 4         //根據給定的路徑建立一個File物件,()為資料夾路徑
5 File srcFile=new File("C:\\Users\\Chen\\Desktop"); 6 //呼叫方法 7 getAllFilePath(srcFile); 8 } 9 10 //定義一個方法,用於獲取給定目錄下的所有內容,引數為第1步建立的File物件 11 public static void getAllFilePath(File srcFile) { 12 //獲取給定的File目錄下所有的檔案或者目錄的File陣列 13 File[] fileArry=srcFile.listFiles();
14 //遍歷該File陣列,得到每一個File物件 15 if(fileArry!=null) { 16 //遍歷該File陣列,得到每一個File物件 17 for(File file:fileArry) { 18 //判斷File物件是否是目錄 19 if(file.isDirectory()) { 20 //是:遞迴呼叫 21 getAllFilePath(file); 22 }else
{ 23 //不是:獲取絕對路徑輸出在控制檯 24 //System.out.println(file.getAbsolutePath()); 25 //獲取目錄或檔名(這裡獲取檔名) 26 System.out.println(file.getName()); 27 } 28 } 29 } 30 } 31 }