Calculando notas | JAVA

Estou tentando criar um calculador de notas com duas matrizes 5x3.
na primeira matriz ele vai me retornar o código do aluno, a primeira nota, a segunda nota e a média entre essas notas
Exemplo:
813981 | 10 | 6 | 8
código | nota1 | nota2 | media

e na segunda matriz eu necessito que ele me retorne o codigo do aluno | nome do aluno | situação do aluno
situação = se média igual ou maior que 7, aprovado, senão, reprovado.
ex:
813981 | João pinto java | Aprovado

porém com o código que estou não consigo chamar ainda o nome e a situação… porém o resto já foi montado, queria entender como eu poderia fazer a chamada do nome e da situação

Código:

 package exercicio01;
import java.util.Scanner;

public class Exercicio01 {
    
    public static void main(String[] args) {
        
        Scanner ent = new Scanner(System.in);
        int codigo, nota1, nota2, situação = 0 ;
       String nome = null;
        int media, i, contAluno = 0;
        int qtdDeLinhas = 5;
        int qtdDeColunas = 3;

        Object[][] primeiraMatriz = new Object[qtdDeLinhas][qtdDeColunas];
        Object[][] segundaMatriz = new Object[qtdDeLinhas][qtdDeColunas];

            for (int linha = 0; linha < qtdDeLinhas; linha += 1) {
                contAluno = linha + 1;
                
                
                
              // recebe a merda do codigo
    System.out.print("Aluno " + contAluno + ", digite seu código aqui: ");
    codigo = ent.nextInt();
  // recebe a merda do nome
  System.out.print("Aluno "+ contAluno + ", digite seu nome: ");
  nome = ent.nextInt(); 
  
    // recebe a 1º nota
    System.out.println("Aluno " + contAluno + ", digite sua 1ª nota");
    nota1 = ent.nextInt();
    
    // recebe a 2º nota
    System.out.println("Aluno " + contAluno + ", digite sua 2ª nota");
    nota2 = ent.nextInt();
   
           
    // calcula a média
            media = (nota1 + nota2) / 2;
         
            
                primeiraMatriz[linha][0] = codigo;
                segundaMatriz[linha][0] = primeiraMatriz[linha][0];
                segundaMatriz[linha][1] = nome;
                primeiraMatriz[linha][1] = nota1;
                primeiraMatriz[linha][2] = nota2;
                segundaMatriz[linha][2] = situação;
                System.out.println("Linha: " + linha);
                System.out.println("Primeira Matriz: " + primeiraMatriz[linha][0] + "|" + primeiraMatriz[linha][1] + "|" + primeiraMatriz[linha][2] + "|" + media);
                System.out.println("Segunda Matriz: " + segundaMatriz[linha][0] + "|" + segundaMatriz[linha][1] + "|" + segundaMatriz[linha][2]);
}
            
          
            if( (media >= 0) && (media <= 4) ){
                System.out.println("Reprovado");
            } else if(media <= 5){
                System.out.println("Reprovado");
            } else if(media <= 6){
                System.out.println("Reprovado");
            } else if(media <= 7){
                System.out.println("Aprovado");
            } else if(media <= 8){
                System.out.println("Aprovado");
            } else if(media <= 10){
                System.out.println("Aprovado");
            }
        }       
    }

Não seria melhor usar um HashMap com o código de aluno como KeySet e uma linkedList com as duas notas, oriundas de um único objeto Notas com dois valores privados setados no construtor?

com esse mapa você consegue resolver os problemas de forma bem mais eficiente.

um método dessa classe que armazena o hashmap você pode ter a média, e em um outro uma analise de cada aluno em cima da média, sabendo que se a nota for igual ou maior à 7 ele vai estar aprovado.

digamos que a classe nota poderia ser do tipo Double, e com duas notas, você poderia usar a seguinte solução:

public String aprovacao(Double nota1, Double nota2) 
{
    if(Double.compare(Double.sum(nota1, nota2), 14) >= 0) 
        { return "aprovado";} 
    else 
        { return "reprovado";}
}