I need to search an array and find a certain value, if it exists returns true, and if it doesn't exist returns false.
The array:
private String zonaDeInternamento[][][] = {
{
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "0012", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"}
},
{
{"Livre", "0013", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"},
{"Livre", "Livre", "Livre", "Livre"}
}
};
So, If the search finds one of the numbers, it returns true, if it finds "Livre", returns false;
public boolean isPacienteInternado(String numeroProcesso) {
if (isNumeroProcessoValido(numeroProcesso)) {
for (int i = 0; i < zonaDeInternamento.length; i++) {
for (int j = 0; j < zonaDeInternamento[i].length; j++) {
for (int h = 0; h < zonaDeInternamento[i][j].length; h++) {
if ((zonaDeInternamento[i][j][h].equals(numeroProcesso))) {
System.out.println("O paciente com número de processo " + numeroProcesso + " está internado!");
return true;
} else {
System.out.println("O paciente com número de processo " + numeroProcesso + " não está internado!");
return false;
}
}
}
}
}
return false;
}
It keeps returning false, never goes inside the if statement, returns the else message and false. Running debug if ((zonaDeInternamento[i][j][h].equals(numeroProcesso))) returns false when numeroProcesso is 13 or 12. What am I missing?
elseloop inside the nestedfor.