Dificuldades de mexer com Iterator - Por favor comente meu código, o que o while está fazendo?

1 resposta
A
private void listaDeAlunosDeIngles() {
		List<String> alunos = new ArrayList<String>();
		alunos.add("Mônica");
		alunos.add("Júlia");
		alunos.add("Maria");
		alunos.add("Joana");

for (Iterator<String> it = alunos.iterator(); it.hasNext();) {
			while (it.hasNext()){
				System.out.println(it.next());
			}
		}

public static void main(String[] args) {
		new UsandoIterator().listaDeAlunosDeIngles();
	}
	}

Dificuldades de mexer com Iterator - Por favor comente meu código, o que o while está fazendo?

1 Resposta

E

Que bagunça é essa? Há dois loops no seu código, e não vai fazer exatamente o que você quer.
Você precisa de um loop só.
Para percorrer os elementos da lista, você poderia usar:

for (Iterator<String> it = alunos.iterator(); it.hasNext(); ) {
    String aluno = it.next();
    System.out.println (aluno);
}

ou o código equivalente (você vai ver que o for acima é exatamente igual ao seguinte while, exceto pelo escopo da variável it):

Iterator<String> it = alunos.iterator(); 
while (it.hasNext()) {
    String aluno = it.next();
    System.out.println (aluno);
}
Criado 28 de junho de 2010
Ultima resposta 29 de jun. de 2010
Respostas 1
Participantes 2