Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: juligarc10 en 18 Septiembre 2019, 13:58 PM

Título: java.lang.ArrayIndexOutOfBoundsException en funcion
Publicado por: juligarc10 en 18 Septiembre 2019, 13:58 PM
Hola amigos, estoy realizando un pequeño ejercicio donde intento comprobar si una matriz cualquiera es cuadrada, es decir, que tiene tantas filas como columnas. Para ello he diseñado un algoritmo, pero al ejecutarlo me da esa excepción. No consigo ver en que momento me salgo fuera del array. Aquí les dejo el código:

public  static  boolean  isSquare(int [][] a) {
        boolean cuadrado=true;
        int p=0;
        while(cuadrado==true&&p<=a.length){
            if(a[p].length==a.length){
                p++;
            }
            else{
                cuadrado=false;
            }
        }
        return cuadrado; 
    }


Gracias de antemano
Título: Re: java.lang.ArrayIndexOutOfBoundsException en funcion
Publicado por: K-YreX en 18 Septiembre 2019, 14:15 PM
Si tu matriz tiene por ejemplo un tamaño de 5x5, los índices van de 0 a 4. Por lo que en la condición del while es: p < a.length (sobra el =).
Título: Re: java.lang.ArrayIndexOutOfBoundsException en funcion
Publicado por: juligarc10 en 18 Septiembre 2019, 14:22 PM
Muchas gracias!!

No caía  :rolleyes: . Gracias por tu ayuda amigo!