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);)

Reply via email to