Java編程獲取文件列表及子文件目錄的方法(非遞歸)
廢話不談,直接進(jìn)入正題,理解見(jiàn)代碼注釋。
// 非遞歸 public List<String> scanFiles(String path) { List<String>filePaths = new ArrayList<String>(); LinkedList<File> list = new LinkedList<File>(); File dir = new File(path); File[] file = dir.listFiles(); for (int i = 0; i < file.length; i++) { if (file[i].isDirectory()) { // 把第一層的目錄,全部放入鏈表 list.add(file[i]); } filePaths.add(file[i].getAbsolutePath()); } // 循環(huán)遍歷鏈表 while (!list.isEmpty()) { // 把鏈表的第一個(gè)記錄刪除 File tmp = list.removeFirst(); // 如果刪除的目錄是一個(gè)路徑的話 if (tmp.isDirectory()) { // 列出這個(gè)目錄下的文件到數(shù)組中 file = tmp.listFiles(); if (file == null) {// 空目錄 continue; } // 遍歷文件數(shù)組 for (int i = 0; i < file.length; ++i) { if (file[i].isDirectory()) { // 如果遍歷到的是目錄,則將繼續(xù)被加入鏈表 list.add(file[i]); } filePaths.add(file[i].getAbsolutePath()); } } } return filePaths; }
以上就是本文關(guān)于Java編程獲取文件列表及子文件目錄的方法(非遞歸)的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Java編程子類(lèi)能否重寫(xiě)父類(lèi)的靜態(tài)方法探索、java編程枚舉類(lèi)型那些事!枚舉類(lèi)型定義和重寫(xiě)枚舉的方法等,如有不足之處,歡迎留言參考。感謝朋友們對(duì)本站的支持!
- java、js中實(shí)現(xiàn)無(wú)限層級(jí)的樹(shù)形結(jié)構(gòu)方法(類(lèi)似遞歸)
- Java之遞歸求和的兩種簡(jiǎn)單方法(推薦)
- Java遞歸方法求5!的實(shí)現(xiàn)代碼
- 利用java+mysql遞歸實(shí)現(xiàn)拼接樹(shù)形JSON列表的方法示例
- java遞歸讀取目錄下所有文件的方法
- 遞歸之斐波那契數(shù)列java的3種方法
- 全排列算法-遞歸與字典序的實(shí)現(xiàn)方法(Java)
- java數(shù)學(xué)歸納法非遞歸求斐波那契數(shù)列的方法
- java實(shí)現(xiàn)遞歸文件列表的方法
- java中方法遞歸的簡(jiǎn)單示例
相關(guān)文章
java8實(shí)現(xiàn)list集合中按照某一個(gè)值相加求和,平均值等操作代碼
這篇文章主要介紹了java8實(shí)現(xiàn)list集合中按照某一個(gè)值相加求和,平均值等操作代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08詳解Java中的println輸入和toString方法的重寫(xiě)問(wèn)題
這篇文章主要介紹了Java中的println輸入和toString方法的重寫(xiě),一個(gè)對(duì)象數(shù)組在調(diào)用Arrays.toString打印時(shí),相當(dāng)于遍歷數(shù)組,然后打印里邊每個(gè)對(duì)象,這再打印對(duì)象就調(diào)用對(duì)象自己的toString了,需要的朋友可以參考下2022-04-04如何修改logback.xml配置文件在resource以外的位置
這篇文章主要介紹了如何修改logback.xml配置文件在resource以外的位置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02Java?Collections工具類(lèi)中常用算法解析
在軟件開(kāi)發(fā)中,算法是非常重要的一部分,它們可以提供高效的數(shù)據(jù)處理和操作,這篇文章主要為大家介紹了Collections?工具類(lèi)集合框架中常用算法,感興趣的可以了解一下2023-06-06Springboot 2.6集成redis maven報(bào)錯(cuò)的坑記錄
這篇文章主要介紹了Springboot 2.6集成redis maven報(bào)錯(cuò)的坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04Elasticsearch常見(jiàn)字段映射類(lèi)型之scaled_float解讀
這篇文章主要介紹了Elasticsearch常見(jiàn)字段映射類(lèi)型之scaled_float解讀。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11IDEA?服務(wù)器熱部署圖文詳解(On?Update?action/On?frame?deactivation)
這篇文章主要介紹了IDEA?服務(wù)器熱部署詳解(On?Update?action/On?frame?deactivation),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03