Sou iniciante no JAVA e tenho uma duvida…
Quando tento listar um ArrayList de Objetos, sempre me traz o ultimo.
import java.util.*;
import javax.swing.JLabel; // o JLabel é só para exemplificar
public class Duvida {
private ArrayList labels;
public Duvida() {
labels = new ArrayList();
}
public void addLabel(JLabel label) {
this.labels.add(label);
}
public Iterator getLabels() {
return this.labels.iterator();
}
public void mostrarLabels() {
Iterator ite = getLabels();
JLabel label = new JLabel();
while(ite.hasNext()) {
label = (JLabel)ite.next();
System.out.println(label.getText());
}
}
public static void main(String[] args) {
Duvida app = new Duvida();
JLabel label = new JLabel();
for(int i=0; i<5; i++) {
label.setText("Label " + i);
app.addLabel(label);
}
app.mostrarLabels(); // resultado: mostra os 5 labels como sendo o ultimo
}
}
Alguém pode me ajudar?
Obrigado