Java在声明后设置2Darray的数组大小
我有一个方法,它应该返回一个2D数组,该数组的结构如下:
int [][] = {{100}, {5}, {1,5,7,8,30,60,...}
我的问题是,当我调用该方法时,我不知道第三个数组的长度。这是我现在的代码:
public static int[][] readFile(int max, int types, String fileName) {
int [][]result = new int[3][];
try {
FileReader reader = new FileReader(fileName);
BufferedReader bufferedReader = new BufferedReader(reader);
String line;
int currentLine = 0;
while ((line = bufferedReader.readLine()) != null) {
String[] numbers = line.split(" ");
System.out.println(line);
if (currentLine == 0) {
result[0][0] = Integer.parseInt(numbers[0]);
result[1][0] = Integer.parseInt(numbers[1]);
}else if (currentLine == 1) {
int []theSlices = new int[numbers.length];
result[2][0] = theSlices; //-> obviously error
for(int i = 0; i<numbers.length; i++) {
theSlices[i] = Integer.parseInt(numbers[i]);
}
return result;
}
currentLine++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
;
return null;
}
我的代码现在显然不起作用,但我如何修复它?感谢您的帮助:)
共 (0) 个答案