Hallo JürgenB,
While-Schleifen um einfach nur hoch oder runter zu zählen und "--" inline mag ich nicht besonders, aber mir ist gerade noch aufgefallen, dass das auch so geht:
public static void shuffle(int[] array) {
for (int i = 0; i < array.length; ++i) {
int r = random.nextInt(i + 1);
int t = array[i];
array[i] = array[r];
array[r] = t;
}
}
Ganz nett ist vielleicht zu überlegen, warum auch diese Variante stimmt.
Mit einer while-Shleife könnte man nuch das i + 1 und einen Aufruf von nextInt sparen (Der erste Aufruf liefert ja immer 0).
Aber ersteres schenke ich mir mal und letzteres überlasse ich dem Compiler ;-)
Grüße
Daniel