我想要一个可以列出目录中所有可用内容的程序。我在java2's.com上找到了一个很好的代码, http://www.java2s.com/Code/Java/File-Input-Output/ListingtheDirectoryContents.htm
这是代码,
import java.io.File;
import java.util.Arrays;
public class Dir {
static int indentLevel = -1;
static void listPath(File path) {
File files[];
indentLevel++;
files = path.listFiles();
Arrays.sort(files);
for (int i = 0, n = files.length; i < n; i++) {
for (int indent = 0; indent < indentLevel; indent++) {
System.out.print(" ");
}
System.out.println(files[i].toString());
if (files[i].isDirectory()) {
listPath(files[i]);
}
}
indentLevel--;
}
public static void main(String args[]) {
listPath(new File(".\\code"));
}
}
我不理解的是第一个n
循环中的变量for
。如果没有在任何地方定义,那么为什么程序没有显示任何错误?
答案 0 :(得分:5)
int i, n;
会宣布两个整数。
在代码中
int i = 0, n = files.length;
声明并初始化它们。
答案 1 :(得分:4)
它被宣布为int
。逗号分隔多个变量声明。
答案 2 :(得分:0)
n在for循环中以与i。
相同的方式定义int x,y; 将两个变量x和y定义为整数。 for for中的逗号看起来更复杂。