Imprimir um objeto do arraylist generalizado como objeto

2 respostas
aisha25

Boa tarde !

Eu não consigo fazer o Arraylist mostrar os dados. Por favor me ajudem com o ponto em negrito
tentei das duas formas pq eu vi um tópico antigo e tentei usar porem a saída não foi satisfatória
Obrigada pela ajuda!!! :wink: :wink:

eu generalizo com o um classe criada. Será que é essa a diferença ?

package arrayTeste;

import java.util.ArrayList;

public class Teste {
	
	public static void main (String []args){
		
		princesa p= new princesa ();
		p.setNome("Gata borralheira");
		p.setEstoria("Cinderela");
		princesa pp = new princesa();
		pp.setNome("Aurora");
		pp.setEstoria("Bela Adormecida");
		ArrayList<princesa> pr = new ArrayList<princesa>();
		pr.add(p);
		pr.add(pp);
		princesa []pri= new princesa[3];
		for(int i=0;i<3;i++){
			pri[i]=p;
		}
		[b]for(princesa prince:pr){[/b]
			[b]System.out.println("Princesa "+pr.get(prince)+"//  Estoria: "+pr.getClass());[/b]
		}
		for(princesa prince:pr){
			System.out.println(pr.size());
	
		}
	}

}


package arrayTeste;

public class princesa {
	private String nome;
	private String estoria;
	
	public String getEstoria() {
		return estoria;
	}

	public void setEstoria(String estoria) {
		this.estoria = estoria;
	}

	public void setNome(String nome){
		this.nome= nome;
	}
	
	public String getNome(){
		return nome;
	}
}

2 Respostas

Kanin_Dragon

Linda Princesa!

O problema está aqui!
for(princesa prince:pr){ 
             [b]System.out.println("Princesa "+pr.get(prince)+"//  Estoria: "+pr.getClass());[/b]  
         }
for(princesa prince:pr){ 
             System.out.println("Princesa "+prince.getNome()+"//  Estoria: "+prince.getEstoria());  
         }
robertol

Na verdade o correto seria

for(princesa prince:pr){ System.out.println("Princesa "+prince.getNome()+"// Estoria: "+prince.getEstoria()); }

Criado 7 de fevereiro de 2011
Ultima resposta 7 de fev. de 2011
Respostas 2
Participantes 3