Foro de elhacker.net

Programación => Java => Mensaje iniciado por: juligarc10 en 9 Marzo 2019, 13:17 pm



Título: java.lang.ArrayIndexOutOfBoundsException: 0; no se por que
Publicado por: juligarc10 en 9 Marzo 2019, 13:17 pm
Hola amigos, no entiendo por que me da este error en el codigo. Una ayudita por favor.

Código:
package IU;



/**
 *
 * @author AEDI
 */
public class Domino {
        private static int numJugadores=0;
        private static String [] Jugadores=new String [numJugadores];
   
    public static void inicioPartida() {
numJugadores=ES.pideNumero("Cuantos jugadores participaran en la partida? ");
                for (int i=0;i<numJugadores;i++){
                    Jugadores[i]=ES.pideCadena("Introduzca el nombre del jugador numero "+ i+" " );
                }
         

}
   
}


Título: Re: java.lang.ArrayIndexOutOfBoundsException: 0; no se por que
Publicado por: rub'n en 9 Marzo 2019, 14:01 pm
Hola amigos, no entiendo por que me da este error en el codigo. Una ayudita por favor.

Código:
package IU;



/**
 *
 * @author AEDI
 */
public class Domino {
        private static int numJugadores=0;
        private static String [] Jugadores=new String [numJugadores];
    
    public static void inicioPartida() {
numJugadores=ES.pideNumero("Cuantos jugadores participaran en la partida? ");
                for (int i=0;i<numJugadores;i++){
                    Jugadores[i]=ES.pideCadena("Introduzca el nombre del jugador numero "+ i+" " );
                }
        

}
    
}

Que tal usa GeSHi

(https://3.bp.blogspot.com/-O6qDroNEzts/W8sWHPnV3MI/AAAAAAAADJw/mypp_PTYxbA_uKr7E-O-x0epDjSUdk3mwCK4BGAYYCw/s1600/geshi.gif)


jugadores lo seteas a cero, por eso no puede llenar mas posiciones, pide el numero de jugadores y con eso das tamaño a el

Código
  1. public class SimpleArray {
  2.  
  3.    private static int numJugadores=0;
  4.    private static String [] jugadores;
  5.    private static final Scanner SCANNER = new Scanner(System.in);
  6.  
  7.    public SimpleArray() {
  8.        inicioPartida();
  9.    }
  10.  
  11.    public static void inicioPartida() {
  12.  
  13.        System.out.println("\"Cuantos jugadores participaran en la partida ?");
  14.        numJugadores = SCANNER.nextInt();
  15.  
  16.        jugadores = new String[numJugadores];
  17.  
  18.        for (int i = 0; i < jugadores.length; i++) {
  19.            System.out.println("Introduzca el nombre del jugador numero " + (i++) + " ");
  20.            jugadores[i] = SCANNER.next();
  21.        }
  22.    }
  23.  
  24.    public static void main(String ...magfaf) {
  25.        new SimpleArray();
  26.    }
  27.  
  28. }

PD... constante en mayúsculas SCANNER