【发布时间】:2015-01-26 00:55:28
【问题描述】:
while (scanner.hasNextLine()) {
line = scanner.nextLine();
if (line.charAt(0) != '#') {
c++;
//looking to get dimensions of line segments from file.
dimensions = new int[c][4];
//Split my file input into an array of tokens(strings)
tokens = line.split(",");
for (int i = 0; i < tokens.length; i++) {
//Parse strings to int.
dimtoke[i] = Integer.parseInt(tokens[i]);
for (int k = 0; k < dimensions.length; k++) {
for (int j = 0; j < dimensions[0].length; j++) {
//attempt to fill 2d array with contents from file.
dimensions[k][j] = dimtoke[j];
}
}
}
}
}
我得到一个二维数组,其中包含文件中的最后一个维度,而不是所有维度。维度在一行文本中以 4 个为一组,所以我用我从文件中读取的每一行中的这些标记创建了一个数组,这样我就可以将它们解析为整数。在将一维整数数组传输到二维数组的过程中发生了一些事情。
【问题讨论】:
-
为什么有四个嵌套循环?此外,您已将值分配给
dimtoke[i](不是dimtoke[j]),例如dimensions[k][j] = dimtoke[i]; -
举一个你输入的例子。