>>256
>Integer[] idx = new Integer[a.length];
>for (int i = 0; i < idx.length; i++) idx[i] = i;

Java8なら、Streamを使えば?

IntStream idx = IntStream.range(0, a.length);