Boa noite pessoal …
é o seguinte …
tenho um metodo toString sobrescrito como segue abaixo:
public String toString()
{
if (this.totalDeAlunos == 0)
{
return “[]”;
}//fim if
StringBuilder builder = new StringBuilder();
builder.append("[");
for (int i = 0; i < this.totalDeAlunos - 1; i++)
{
builder.append(this.objetos[i]);
builder.append(", “);
}//fim for
builder.append(this.objetos[this.totalDeAlunos - 1]);
builder.append(”]");
return super.toString();
}//fim toString
porém, quando no meu main quando eu mando imprimir a lista, ao inves de me
retornar uma saida como [aluno1, …, alunoX] ele esta me retornando o endereço de memoria… a referencia do objeto, pois a minha classe é generica …
meu main esta assim:
public static void main(String[] args)
{
//criando os alunos para serem armazenados no vetor
Aluno a1 = new Aluno();
Aluno a2 = new Aluno();
Aluno a3 = new Aluno();
a1.setNome("joao");
a2.setNome("fred");
a3.setNome("lucas");
// criando vetor com nome lista
Vector lista = new Vector();
//adicionando alunos no vetor
lista.adiciona(a1);
lista.adiciona(a3);
System.out.println(lista);
}//fim main
A minha classe vector nada mais é do que uma lista na qual meu array esta definido como :
private Object[] objetos = new Object[100];
Ah, so pra constar…esse exercicio e da apostila de estrutura de dados da caelum …
Entao, se alguem souber como resolvo esse problema e puder me ajudar ficaria agradecido !
Um abraço e obrigado desde ja !