【发布时间】:2013-01-31 21:19:16
【问题描述】:
我必须使用二维数组。数组中行槽的最大长度为 100。通常情况下,这些数组槽中的 5-20 个将被填充,而不是更多,但是,我必须将我的代码构建为最多 100 行。我的问题是,有没有办法只遍历已设置的数组槽,在最后一个未设置的空槽之前停止?
//initialize array
String[][] variables = new String[numVariables][100];
//System.out.printf("%s \n", numVariables);
for(int i=0; i < numVariables; i++){
//reads in variable line
String variableLine = fin.nextLine();
//turn variable line into array
varArray = variableLine.split(" ");
numRules = Integer.parseInt(varArray[0].replaceAll("\\s",""));
for(int j=0; j < numRules+1; j++){
variables[i][j] = varArray[j+1];
System.out.printf("%s ", variables[i][j]);
}
System.out.println("\n");
}
//**LATER IN MY CODE ****//
//ITERATE THROUGH 'variables' array and PRINT OUT ONLY VALUES THAT ARE SET
【问题讨论】:
-
真的需要使用数组吗?如果空值经常出现并且是一个“问题”,如果位置与您相关,更好的方法可能是使用其他一些标准结构,如列表或地图。
-
是的,这是一项要求,正如帖子的第一行所述。不过感谢您的回复。