Problema con excepcion
Publicado por Johan (1 intervención) el 02/01/2011 11:02:02
A ver si alguien me puede ayudar.
Tengo un método que debe decirme si entre unas coordenadas de una matriz hay alguna que contenga un caracter concreto. Lo he implementado así
public boolean celdaMarcada (int filaInicio, int columnaInicio, int filaFin, int columnaFin){
boolean enc=false;
int i=filaInicio;
int j=columnaInicio;
while (i<=filaFin && !enc){
while (j<=columnaFin && !enc){
if (t[i][j]!='.'){
enc=true;
}
j++;
}
j=columnaInicio;
i++;
}
return enc;
}
Los parámetros que se le pasan a este método están siempre comprendidos entre 0 y t.length
Lo he probado exhaustivamente fuera del programa y funciona bien. El problema es que cuando en el programa que estoy haciendo invoco a un metodo que es exactamente igual, me da una exception de ArrayIndexOutOfBounds. Entiendo por qué esto se produce, lo que no termino de ver es por qué en el programa principal salta la excepción y cuando pruebo ese mismo método por otro lado no. Qué se me podría estar pasando por alto?
Tengo un método que debe decirme si entre unas coordenadas de una matriz hay alguna que contenga un caracter concreto. Lo he implementado así
public boolean celdaMarcada (int filaInicio, int columnaInicio, int filaFin, int columnaFin){
boolean enc=false;
int i=filaInicio;
int j=columnaInicio;
while (i<=filaFin && !enc){
while (j<=columnaFin && !enc){
if (t[i][j]!='.'){
enc=true;
}
j++;
}
j=columnaInicio;
i++;
}
return enc;
}
Los parámetros que se le pasan a este método están siempre comprendidos entre 0 y t.length
Lo he probado exhaustivamente fuera del programa y funciona bien. El problema es que cuando en el programa que estoy haciendo invoco a un metodo que es exactamente igual, me da una exception de ArrayIndexOutOfBounds. Entiendo por qué esto se produce, lo que no termino de ver es por qué en el programa principal salta la excepción y cuando pruebo ese mismo método por otro lado no. Qué se me podría estar pasando por alto?
Valora esta pregunta


0