Ao executar, só é exibido caracteres aleatórios, imagino que seja o endereço de memória, eu precisaria que fossem exibidos os elementos. Segue o código:
package pqp;
import java.awt.List;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class CarregaAlunos2 {
protected static Aluno constroiAluno(String linha){
String atributos[] = linha.split(",");
Aluno a = new Aluno(atributos[0], atributos[1], atributos[2]);
return a;
}
public static Aluno[] carregaArquivo(String arquivo) throws IOException{
Aluno alunos[] = new Aluno[5];
FileReader fr = new FileReader(arquivo);
BufferedReader br = new BufferedReader(fr);
String linha;
int cont = 0;
while ((linha = br.readLine()) != null)
{
Aluno a = constroiAluno(linha);
alunos[cont] = a;
cont++;
}
br.close();
return alunos;
}
public static void main(String[] args) {
try{
Aluno a[] = carregaArquivo("notas.txt");
for (int i=0; i < a.length; i++){
System.out.println(a[i]);
}
}
catch(IOException e){
e.printStackTrace();
}
}
}
Retorno no console
pqp.Aluno@15db9742
pqp.Aluno@6d06d69c
pqp.Aluno@7852e922
pqp.Aluno@4e25154f
pqp.Aluno@70dea4e