Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/11/2010, 05:20
batistap
 
Fecha de Ingreso: noviembre-2010
Mensajes: 72
Antigüedad: 14 años
Puntos: 1
Respuesta: Crear un método para seleccionar Personas al azar.

Cita:
Iniciado por elanguido Ver Mensaje
Pues una solución rápida que se me ocurre es con un array:

Código PHP:
int[] personas = new int[5];
Random rand = new Random();
for(
int i 0personas.length;){
   
boolean existe false;
   
personas[i] = rand.nextInt(5);
   for(
int j 0ij++){
      if(
personas[i] == personas[j])
          
existe true;
   }
   if(
existe) continue;
   
i++;

con este código consigues un número aleatorio diferente entre 0 y 4 para cada posición del array, ya sólo tendrías que asignarle estos numeros a cada persona.

Al ser solo son 5 jugadores puedes hacerlo así, si fueran más, por ejemplo 300 no sería una buena técnica ya que seguramente tardaría demasiado en asignarlos.

un saludo.
Muchas gracias por tu ayuda, el método por ahora me va quedando así:

Código PHP:
public void OrdenAzar(List<Playerjugadores){
            
int[] personas = new int[5];
            
Random rand = new Random();
            for(
int i 0personas.length;){
               
boolean existe false;
               
personas[i] = rand.nextInt(5);
               for(
int j 0ij++){
                  if(
personas[i] == personas[j])
                      
existe true;
               }
               if(
existe) continue;
               
i++;
            }  
        } 
Para asignar un número a cada jugador tendría que hacer uso de un Map<Player, Integer> ¿voy bien?

Muchas gracias por tus respuestas.


Saludos.