La pregunta original dice... "debe haber una forma más sencilla de hacer esto". No dice "estoy aprendiendo a programar formas de desordenar una lista etc. etc.
. Al igual que otro que dice que necesita una lista aleatoria para un bingo, no aprender teorías sobre Random etc.
Si, luego he visto que en los enlaces estaba la misma técnica, pero la mayoría de los novatos no siguen los enlaces y se quedan con la solución que les das
.
De todas formas, estoy muy de acuerdo en que Java no es un buen lenguaje para aprender a programar de forma genérica. Es un lenguaje pensado para "solucionar el problema" y , IMHO, otra cosa que hay que aprender es a usar el lenguaje como toca, cosa que mucha gente no hace y acaban reinventando la rueda.
Por eso si no lo piden explícitamente, creo que es mejor no liarlos con la forma larga de hacer las cosas. Otra cosa sería si el objetivo fuese aprender sobre los procesos aleatorios, su eficiencia etc. etc. O sea que entiendo lo que dices, pero en este caso no veo la razón.
S!