讀者需注意:架構
遞歸的效率自己並非很高,固然不是絕對的;64位的系統大概能夠調用幾萬次遞歸spa
不管是在開發組織架構系統仍是遞歸刪除或遍歷時,若是一直無止境的遞歸下去會形成棧溢出code
固然,以上知識點是對初學者的普及,不會影響咱們對如下的方法使用,大部分場景下該代碼都是能夠使用的 blog
public class FileDelete { public static void deleteFlie(File f) { File[] subFiles = f.listFiles(); //沒有子目錄直接刪除 if (subFiles.length == 0) { f.delete(); } else { //有子目錄進行循環遞歸 for (int i = 0; i < subFiles.length; i++) { if (subFiles[i].isDirectory()) { deleteFlie(subFiles[i]); } else { subFiles[i].delete(); } } f.delete(); } } public static void main(String[] args) { File file = new File("d:\\test"); deleteFlie(file); } }