Estou resolvendo um exercício que tenho que verificar se um número está dentro de uma matriz. Eu resolvi criando uma variável verificador = 0 e se o número é encontrado, ele soma e sai do loop porque já não é mais zero (Sem o verificador ele continua no loop por causa do for aninhado). Porém, não sei se é a melhor solução porque parece que ficou muito complexo, não estou conseguindo ver uma solução melhor no momento. Se alguém puder opinar
import java.util.Scanner;
public class AcharNumeroDaLista {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int[][] numeros = new int[2][5];
for (int i = 0; i < numeros.length; i++) {
for (int j = 0; j < numeros[i].length; j++) {
System.out.println("Digite um número (máx. 100):");
numeros[i][j] = sc.nextInt();
if (numeros[i][j] > 100) {
throw new Exception("O valor deve ser menor que 100");
}
}
}
System.out.println("Agora entre com um número para saber se ele está contido na lista de números:");
int numeroEscolhido = sc.nextInt();
int verificador = 0;
for (int i = 0; i < numeros.length; i++) {
if (verificador != 0) {
break;
}
for (int j = 0; j < numeros[i].length; j++) {
if (numeros[i][j] == numeroEscolhido) {
System.out.println("O valor existe no conjunto");
verificador++;
break;
} else if (i == (numeros.length - 1) && j == (numeros[i].length - 1)) {
System.out.println("--");
}
}
}
}
}