2016-10-07 23 views
1

我正在進行挑戰練習,而我正在使用bluej。在這裏,你有我與掙扎的代碼:如何在使用for-each循環時在列表中包含每個文件名的索引

public void listAllfiles() 
{ 
    for(String filename : files) { 
     System.out.println(filename); 
    } 
} 

我應該通過包括在列表中的每個文件名的索引,當我打印,以提高這種方法。經過無數次的嘗試,我似乎陷入了困境。我知道我在方法中需要一個「position」的局部變量,並且在for-each循環內需要一個語句來更新它的值。我只是無法做到。

+1

什麼類型是'files'? – weston

回答

0

難道是這樣簡單:

int count = 0; 
for(String filename : files) { 
    System.out.println(String.format("files[%s]: %s", count++, filename)); 
} 
0

這將是最好從增強每個循環for(... : ...)改變for循環定期編入索引的循環for(...; ...; ...)

(請注意, intellij的想法有一個重構爲此,只需將光標放在標記for上並點擊燈泡,然後選擇:「替換'爲'循環索引'的每個'循環',但我懷疑bluej是有用的,所以你必須手動做)

假設files是一個數組:

for(int i = 0; i < files.length; i++){ 
    System.out.println(i + ": " + files[i]); 
} 
+0

這對你有幫助嗎?請注意或接受有用的建議。 – weston

相關問題