f這里的files != null代表什么?文件不為空?那么用file.exists不是更好嗎?
File files[] = dir.listFiles();// 返回的是直接子目錄(或者文件)的抽象
if (files != null && files.length > 0) {
for (File wenjian : files)
if (wenjian.isDirectory()) {
// 遞歸
listDirectory(wenjian);
} else {
System.out.println(wenjian);
}
}
}
2017-11-22
files是返回的File類型數(shù)組,file是數(shù)組中的元素
需要先判斷數(shù)組是否為空(files.length >0),而files != null只是更周全的寫法,在這個(gè)示例里面其實(shí)是可以不用寫的,因?yàn)樯厦嬉呀?jīng)判斷了dir的存在
2018-02-08
if (files != null && files.length > 0)
這句判斷完全可以不寫,因?yàn)閒oreach的循環(huán)行為,內(nèi)部已經(jīng)判斷了files的length為0,或者為null的情況,已經(jīng)進(jìn)行了排除。
不過在別的情況下,使用對(duì)象還是要科學(xué)判斷對(duì)象是否為null,這是一個(gè)編程好習(xí)慣。
2017-11-23
紅框中的dir這個(gè)File類型對(duì)象對(duì)應(yīng)的是目錄,因?yàn)檫@個(gè)dir在調(diào)用構(gòu)造函數(shù)的時(shí)候傳入的參數(shù)是某個(gè)目錄的路徑。
File類型的對(duì)象還可以是具體的某個(gè)文件,這就需要在調(diào)用構(gòu)造函數(shù)的時(shí)候傳入的參數(shù)是具體文件的路徑,比如
?File dir = new File("e:\\javaIO\\test.txt")