On 2010-12-05 19:41:50 +0200, u...@domain.invalid said:
Hello, I've been wondering what the easiest way is to set the dimension of an array during runtime. You can't write byte[][] a = new byte[size][size]; because the compiler will give an error. The only thing I've been able to think of is byte[][] a; a.length = size; for (int i; i < size; i++) { a[i].length = size; } But it's slower (and less convenient) than writing byte[][] a = new byte[9][9];
The syntax might seem a bit misleading, but you can create multidimentional arrays like this:
int[][] foo = new int[][](5,10); foo[4][9] = 31337; this also works for single-dimention arrays (e.g int[] foo = new int[](size);)