Numeros aleatorios

Jon Mikel
27 de Junio del 2005
Hola,

Teniendo un array (num[]) de enteros lleno de numeros, sacar estos numeros en orden aleatorio en vez de hacerlo con un for desde el indice 0 hasta el ultimo.
Como puedo sacar por ejemplo 20 numeros aleatorios de entre 1 y 20 sin que se repita ninguno,osea, todos los numeros pero en orden aleatorio? Tiene la clase random alguna funcion para hacer esto? o tengo ke hacer un for y mirar cada vez que consigo un numero, si ha salido anteriormente?

NoDo
27 de Junio del 2005
Creo que lo mejor que puedes hacer es en vez de meter los número en un vector, generalos mejor así:
int numero = (int)(Math.random() * limitequeQuieras);
siendo limitequeQuieras el último número. Vamos, si quieres generar del 1 al 50, limitequeQuieras será 50.
Con respecto a que no te salgan repetidos no se me ocurre otra manera que ir comprobando los anteriores, un poco tedioso, pero bueno, a ver si alguien lo sabe.
Un saludo.