ArrayList e Iterator tirando duvida de iniciante, ajuda!

    Ola pessoal fiz esse programinha com ArrayList e Iterator simples e acho bem util para fazer a adicionar dados, excluir, consultar e ordenação ... 

espero ter ajudado vcs,
valeu!

import java.util.ArrayList;
import java.util.Iterator;

public class Agenda {

   private ArrayList listaDados;
   private int id;
   private String nome;


 

   public void adicionarDados(){
		System.out.println("\nAdicionando Dados");
       		listaDados = new ArrayList();
  			Agenda  bean = new Agenda();
                   bean.setId(1);
                   bean.setNome("Leandro ");
                   listaDados.add(bean);
                   System.out.println("add "+bean.getId());
                   System.out.println("add "+bean.getNome());
  			bean = new Agenda();
                   bean.setId(2);
                   bean.setNome("Erica   ");
                   listaDados.add(bean);
                   System.out.println("add "+bean.getId());
                   System.out.println("add "+bean.getNome());
            bean = new Agenda();
                   bean.setId(3);
                   bean.setNome("Fernando");
                   listaDados.add(bean);
                   System.out.println("add "+bean.getId());
                   System.out.println("add "+bean.getNome());
            bean = new Agenda();
                   bean.setId(4);
                   bean.setNome("Giani   ");
                   listaDados.add(bean);
                   System.out.println("add "+bean.getId());
                   System.out.println("add "+bean.getNome());
            bean = new Agenda();
                   bean.setId(5);
                   bean.setNome("Adriana");
           		   listaDados.add(bean);
                   System.out.println("add "+bean.getId());
                   System.out.println("add "+bean.getNome());
   }

   public void consultaDados(){
		System.out.println("\nConsultando Dados");
		Iterator it = listaDados.iterator();
   		while (it.hasNext()) {
   			Agenda bean = (Agenda) it.next();
       			System.out.println("imprime id  .... "+bean.getId());
   				System.out.println("imprime nome.... "+bean.getNome());
   		}
	}

   public void excluirDados(){
		System.out.println("\nExcluindo Dados");
		Iterator it = listaDados.iterator();
      		while (it.hasNext()) {
      			Agenda bean = (Agenda) it.next();
      			if(bean.getId() == 2){
          			System.out.println("imprime id  .... "+bean.getId());
      				System.out.println("imprime nome.... "+bean.getNome());
      				it.remove();
      			}
      		}
	}

   public void ordenaDados(){
		System.out.println("\nOrdenando Dados");
		int cont = 0;
		Iterator it = listaDados.iterator();
      		while (it.hasNext()) {
      			cont++;
      			Agenda bean = (Agenda) it.next();
      				bean.setId(cont);
      				System.out.println("imprime id  .... "+bean.getId());
      				System.out.println("imprime nome.... "+bean.getNome());
      		}
	}

   
   public static void main(String[] args) {
           Agenda  start = new Agenda();
           start.adicionarDados();
           start.excluirDados();
           start.consultaDados();
           start.ordenaDados();

   }

   public int getId() {
           return id;
   }

   public void setId(int id) {
           this.id = id;
   }

   public String getNome() {
           return nome;
   }

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

}

******************************** SAIDA DO CONSOLE ***********************

Adicionando Dados
add 1
add Leandro
add 2
add Erica
add 3
add Fernando
add 4
add Giani
add 5
add Adriana

Excluindo Dados
imprime id … 2
imprime nome… Erica

Consultando Dados
imprime id … 1
imprime nome… Leandro
imprime id … 3
imprime nome… Fernando
imprime id … 4
imprime nome… Giani
imprime id … 5
imprime nome… Adriana

Ordenando Dados
imprime id … 1
imprime nome… Leandro
imprime id … 2
imprime nome… Fernando
imprime id … 3
imprime nome… Giani
imprime id … 4
imprime nome… Adriana

Boa noite Leandro,

Sua atitude de ajudar os novatos é sempre bem vinda, porém poste com as tags de código senão ficará um tanto obscuro entendê-lo. O Mantu escreveu um post explicando como neste link: http://www.guj.com.br/posts/list/50115.java

Abraços

Se você está usando o Java 5 ou superior, qualifique o tipo de dados do seu ArrayList. Também é uma boa prática usar o ArrayList através da interface list. Exemplos:

Ao invés de

private ArrayList listaDados;

Faça:

private List<Agenda> listaDados;

E depois na hora de usar:

listaDados = new ArrayList<Agenda>();

A mesma coisa na hora de usar o iterator:

Iterator<Agenda> it = listaDados.iterator();

Torna o código mais seguro, pois te impede de inserir algo que não seja um agenda por acidente, como também mais limpo, por casts.

Não entendi o que faz o seu método OrdenaDados. Dê uma olhada no método Collections.sort e na interface Comparable. Isso deve facilitar muito a ordenação de dados para você. Por fim, dá uma olhada nesse link, que mostra vários recursos do List:
http://www.guj.com.br/posts/list/74068.java#389435

Teu programa tá bem bacana. Você está no caminho certo! :slight_smile: