有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案