创建一个未确定大小的二维锯齿状数组

时间:2015-03-30 17:09:47

标签: java arrays jagged-arrays

对于我的程序,我正在制作一个2D锯齿状的整数数组,每个数组的长度取决于用户的输入。

让我们说:

int seq [] [] = new int [M] [];
for(int i = 0; i < M; i++){
    seq[i] = new int [N[i]];

每个数组的数组(M)和N数组的总长度取决于用户的输入。 有没有办法让我这样做,这样得到的2D数组可以被类中的任何方法使用?

感谢。

2 个答案:

答案 0 :(得分:1)

你可以使它成为一个实例变量,并在某个init方法或构造函数中初始化它。

public class Test{
    int[][] array;

    public void initialize() {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt();
        int n = scanner.nextInt();
        array = new int[m][n];
    }

     public void processArray() {
       if(array != null) {
         //process array
       }
     }
}

答案 1 :(得分:1)

  

是的,您可以在运行时获取阵列的行和列的大小,然后根据您提供的大小创建阵列。

 int m;
 int n;
System.out.println("EnTer size of Row and column");
m = input.nextInt();
n = input.nextInt();
int[] arr = new int[m][n];