亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

子目錄是空文件夾就不會打印出來?

最后遍歷所有文件 包括子目錄的時候 ?如果是空文件夾,空文件夾的名字就打印不出來了,這是BUG么?

正在回答

5 回答

因為遞歸之后是有判斷某個目錄下的長度的,而當遞歸遍歷到空文件夾時,它的長度為0,就不會執行for里面的語句了,就更無法執行for里面的打印語句了。

可以運行一下下面的代碼,會每次遞歸都輸出長度,容易理解

File[] filename=dir.listFiles();

//遍歷該數組

//for (File string : filename) {

// System.out.println(string);

//}

//2、調用list()方法羅列文件

// String[] filename2=dir.list();

//for (String string : filename2) {

// System.out.println(string);

// }

//3、讓它列出所有的內容

System.out.println(filename.length);

if(filename!=null&&filename.length>0) {

for (File file : filename) {

if(file.isDirectory()){

//遞歸

listDirectory(file);

System.out.println(file);

}else{

System.out.println(file);

}

}


0 回復 有任何疑惑可以回復我~

+1 求解。沒有遞歸的時候直接打印file是打印出來dir目錄下的文件夾路徑 遞歸之后什么都沒有

0 回復 有任何疑惑可以回復我~

按照老師的寫法,只要是文件夾都不會被打印名字,只會打印file的路徑

0 回復 有任何疑惑可以回復我~

寫法上加if判斷是目錄時候遞歸了,這塊限制了,換個寫法,不加else就可以了打印了,不用細究這塊,else的時候都不是目錄才打印,所以打印不出來空文件夾

0 回復 有任何疑惑可以回復我~

空文件夾能正常打印???只要你代碼沒錯的話,遍歷出來的結果是這個空文件夾的名字

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

子目錄是空文件夾就不會打印出來?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號