Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/11/2010, 10:40
batistap
 
Fecha de Ingreso: noviembre-2010
Mensajes: 72
Antigüedad: 13 años, 5 meses
Puntos: 1
Duda al crear un método para crear mapas.

Estoy creando un método que ordene al azar de 3 a 5 jugadores. Si hay 3 jugadores hay que crear un mapa para asignarle a cada jugador un número del 0 al 2. El mapa sería así Map<Player,Integer>. Si hay 4 jugadores pues crear cuatro mapas para asignarle a cada jugador un número del 0 al 3 y con 5 jugadores exactamente igual.


Os pongo el código que tengo echo:

Código PHP:
    public void OrdenAzar(List<Playerjugadores){
            if(
jugadores.size()==3){
                
creaMapa();
            }else if(
jugadores.size()==4){
                
creaMapa();
            }else{
                
creaMapa();
            }
            
            
            
int[] players = new int[jugadores.size()]; //Acoto los números del azar con el tamaño de la lista jugadores
            
Random rand = new Random(); // Es la clase encargada de generar los números al azar
            
for(int i 0players.length;){ // Recorro el array players
               
boolean existe false// Si al jugador no se le ha asignado un número al azar sigo:
               
players[i] = rand.nextInt(jugadores.size()); //Asigno al jugador un número del 0 al 4
               
               
for(int j 0ij++){ // Compruebo jugadores que ya tienen asignado número
                  
if(players[i] == players[j])
                      
existe true;          //Ya existe jugador con número asignado
               
}
               if(
existe) continue;// Si ya tiene asignado número seguimos con el siguiente jugador.
               
i++;
            }  
        } 
Mi duda está en que no sé cómo hacer el método creaMapa( ) el cual tiene de función crear 3 mapas si hay 3 jugadores, 4 mapas si hay 4 jugadores y 5 mapas si hay 5 jugadores.

¿Alguien sabe cómo se podría implementar el método creaMapa( )?

Saludos.