Ajuda atividade[RESOLVIDO]

Boa noite. Sou novo por aqui e estou com o seguinte problema: ao digitar o nome do aluno solicitado, dá o erro java.lang.NullPointerException. Gostaria que me ajudassem. Obrigado. :wink:

CLASSE MAIN:

[color=green][b]/*
Faça um programa que lê nomes e 4 notas de 10 alunos. Em seguida apresente uma saída no seguinte formato:

Nome: Nota1: Nota2: Nota3: Nota4: Total: Média:
XXXX X X X X XX XX
*/[/b][/color]

package ex_16_09_02;
import java.util.Scanner;
public class Main {

public static Scanner input = new Scanner(System.in);
public static Aluno [] a = new Aluno [10];

public static void leitura(int i){
    System.out.println("Nome aluno"+(i+1)+":");
    a[i].nome=input.next();
    for(int j=0; j<a[i].nota.length; ++j){
        System.out.println("Nota"+(j+1)+":");
        a[i].nota[j]=input.nextFloat();
        calculo(i,j);
    }        
}

public static void calculo(int i, int j){
    if(j<4){
        a[i].media+=a[i].nota[j];
    }else
        a[i].media/=a[i].nota.length;
        a[i].total+=a[i].nota[j];
        saida(i,j);
}

public static void saida(int i, int j){
    if(i==0)
    System.out.println("Nome:\t       Nota1:\tNota2:\tNota3:\tNota4:\tTotal:\tMédia:");
    System.out.println(a[i].nome+"\t      "+a[i].nota[0]+"\t"+a[i].nota[1]+"\t"+a[i].nota[2]+"\t"
            +a[i].nota[3]+"\t"+a[i].nota[4]+"\t"+a[i].total+"\t"+a[i].media);
}

public static void main (String [] args){
    for(int i=0; i<a.length; ++i){
        leitura(i);            
    }
}   

}

CLASSE ALUNO:

package ex_16_09_02;
public class Aluno {
String nome;
float [] nota = new float [4];
float media=0;
float total=0;
}

Então,

quando você faz isso, você está instanciando um vetor de alunos, isso está certinho:

Aluno [] a = new Aluno [10]; 

Porém, cada posição do vetor é para ser preenchido com um objeto aluno, então você tem que instanciar o aluno do vetor:

a[i] = new Aluno(); a[i].nome =...

Capiche?

Obrigado! Entendi agora. Não sabia que tinha que fazer isso. kkk

a[i] = new Aluno(); a[i].nome=input.next();

Eu sou novo por aqui, eu preciso colocar “RESOLVIDO”? Se tiver, como faço? rs

Vá no seu primeiro posto e vai ter um botão “EDITAR” nele vai ter a parte de editar o assunto.

obrigado =)