2016-10-07 26 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

相关问题