Duvida com o iterator, alguem pode me ajudar?

3 respostas
jefersonrcosta

eu estou estudando Iterator, mais o livro nao me ensinou a usa-lo, sera que alguem pode me dar um exeplo de como usa-lo?
Valeu!!!

3 Respostas

natureza
public static void main(String[] args) {
		
		List<Produto> listaProduto = new ArrayList<Produto>();
		List<Produto> listaAdicionada = new ArrayList<Produto>();
		
		Produto prod1 = new Produto();
		prod1.setId(1L);
		prod1.setDescricao("Mouse Pad");
		listaProduto.add(prod1);
		
		Produto prod2 = new Produto();
		prod2.setId(2L);
		prod2.setDescricao("Notebook");
		listaProduto.add(prod2);
		
		Produto prod3 = new Produto();
		prod3.setId(3L);
		prod3.setDescricao("Processador");
		listaProduto.add(prod3);
		
                                // Faz a iteração da lista utilizando Iterator
		for (Iterator iterator = listaProduto.iterator(); iterator.hasNext();) {
                                                //Define o tipo e faz a iteração com os elementos da lista
			Produto prod = (Produto) iterator.next();
                                                //No caso aqui eu fiz uma verificação, adicionei em uma lista nova e ja exclui o registro percorrido no momento.
			if(prod.getId().equals(2L)){
				listaAdicionada.add(prod);
				iterator.remove();
			}
		}
		
		for(Produto produtos : listaProduto){
			System.out.println("Produtos: " + produtos.getId() + " " + produtos.getDescricao());
		}
		
		for(Produto prod : listaAdicionada){
			System.out.println("Lista: " + prod.getId() + " " +  prod.getDescricao());
		}
	}
			
}

É isso?

F
import java.util.HashSet;
import java.util.Iterator;
public class Teste {
	public static void main(String[] args) {
		HashSet conjunto = new HashSet();
		conjunto.add("a");
		conjunto.add("b");
		conjunto.add("c");
		conjunto.add("d");
		Iterator i = conjunto.iterator();
		while(i.hasNext()) {
			String elemento = (String)i.next();
			System.out.print(elemento);
		}
			
	}
}

O Iterator serve para pegar os elementos dentro de uma coleção. A ordenação dos elementos, dependendo do tipo da coleção, pode não ser garantida.

rogelgarcia

Iterator com generics...

List<String> minhaLista = Arrays.asList(new String[]{"msg1", "msg2", "msg3"});//nao esquenta com essa construcao... é só pra diminuir o código
		
		//usando while
		Iterator<String> iterator1 = minhaLista.iterator();
		while(iterator1.hasNext()){
			String mensagem = iterator1.next();
			System.out.println(mensagem);
		}
		
		//usando for
		for (Iterator<String> iterator2 = minhaLista.iterator(); iterator2.hasNext();) {
			String mensagem = iterator2.next();
			System.out.println(mensagem);
		}
		
		//usando foreach
		for (String mensagem : minhaLista) {//o iterator aqui está implicito.. 
			System.out.println(mensagem);
		}
Criado 25 de março de 2010
Ultima resposta 25 de mar. de 2010
Respostas 3
Participantes 4