[RESOLVIDO] Imprimir a posição da matriz que contem o maior valor!

Olá galera do GUJ, não estou conseguindo imprimir a posição que contem
o maior valor da matriz, no Netbeans não apresenta erro de sintaxe…
mas da erro na linha 22

“if (a[lin][col] > maior)”

dentro do “for” eu não posso comparar uma outra variável externa
e nem atribuir um valor a ela?

       import java.util.Random;

public class MaiorValMatriz {

    public static void main(String[] args) {

        
        Random rnd = new Random();
        
        int[][] a = new int[10][10];
        int maior=0;
        
        for (int lin = 0; lin < a.length; lin++){
            for (int col = 0; col < a.length; col++){
             a[lin][col] = rnd.nextInt(100);
                
            }// Repetição coluna
        }//Repetição Linha
    
        for (int lin = 0; lin< a.length; lin++){
            for (int col = 0; col<a.length; lin++){
                if (a[lin][col] > maior)
                    maior = a[lin][col];
                
                }//Repetição coluna
        }//Repetição linha
        
        
        for (int lin = 0; lin< a.length; lin++){
            for (int col = 0; col<a.length; lin++){
                if (a[lin][col]==maior)
                    System.out.printf("O maior valor está na linha: %d , coluna: %d" , lin , col);
            
            }// Repetição coluna
        }//Repetição linha
    }
}

O problema acontece porque você incremente duas vezes a variávei lin mas não incrementa a variável col. Assim, o loop for interno continua indefinidamente, incrementando a variável lin até você obter um ArrayIndexOutOfBoundsException;

Dica: o 3o bloco de for não é preciso. Basta que no 2o bloco você armazene as variáveis lin e col do maior número.

Nuss cara, nem percebi o incremento duas vezes em “lin” ^^
é o calor de Goiás! kkkk

e usei a sua recomendação, armazenei a linha e a coluna, ficou assim:

int[][] a = new int[10][10];
        int maior=0;
        int l=0;
        int c=0;
        for (int lin = 0; lin < a.length; lin++){
            for (int col = 0; col < a[lin].length; col++){
             a[lin][col] = rnd.nextInt(100);
                
            }// Repetição coluna
        }//Repetição Linha
    
        for (int lin = 0; lin< a.length; lin++){
            for (int col = 0; col<a[lin].length; col++){
                if (a[lin][col] > maior){
                    maior = a[lin][col];
                    l = lin;
                    c = col;
                }
                }//Repetição coluna
        }//Repetição linha
        

 System.out.printf("O maior valor está na linha: %d , coluna: %d\n" , l , c);
            
           
    }
}

Pois é, geralmente esse tipo de erro a gente pega com o debugador, e no Netbeans é bem fácil de usar. Você clica do lado da linha e aparece um quadrado vermelho. Isso se chama breakpoint. Daí você manda executar em modo debug que você consegue acompanhar seu programa passo-a-passo.