能否创建一个二维整数数组的数组,例如:
int n = 100;
int[][] [] a = new int[][] [n];
数组具有固定长度n
,矩阵(2D数组)具有不同的非零大小(至少为1 x 1
)。
为了提高性能,我希望将其存储在堆栈中,而不是像这样:
ArrayList<int[][]> a = new ArrayList<int[][]>(n);
据我所知,这将被存储在堆中。
能否创建一个二维整数数组的数组,例如:
int n = 100;
int[][] [] a = new int[][] [n];
数组具有固定长度n
,矩阵(2D数组)具有不同的非零大小(至少为1 x 1
)。
为了提高性能,我希望将其存储在堆栈中,而不是像这样:
ArrayList<int[][]> a = new ArrayList<int[][]>(n);
int n = 100;
int[][][] a = new int[n][][];
List<int[][]> a = new ArrayList<int[][]>(n);
-->这种语法是无效的,会导致编译错误。请使用冒号(:)。Is it possible to create an array of 2D int arrays like:
int n = 100; int[][] [] a = new int[][] [n];
int n = 100;
int[][] [] a = new int[n][] [];
a
是一个对象,会被存储在堆上而不是栈上。
int[] a = new int[5]
这样的简单数组也会在堆上。好的,谢谢您的信息,那么ArrayList
就是一个解决方案。 - Sophie Spernernew int[n][][];
。 - obataku