For Avançado

4 respostas
C

Oi Pessoal

Eu já procurei no Google, mas não encontrei nada sobre o For avançado do java:

For(Carro car: carTeste){

}

Eu achei um for estruturado mais ou menos dessa forma, mas não consigo entender como ele funciona, e já procurei no Google, e não encontrei nada, alguém pode me explicar??? :roll: :?:

Obrigada

4 Respostas

B

Ola,

Acho que este link pode te ajudar: http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.14

Qq duvida que ficar é só postar.

S

Cara esse for que você colocou aí eu imagnino que seja isso que você quer.

import java.util.ArrayList;

public class teste1 {

	public static void main(String[] args) {
	
		ArrayList <String> lista  = new ArrayList();
		lista.add("a");
		lista.add("b");
		lista.add("c");
		lista.add("d");
		lista.add("e");
		lista.add("f");
		
		for(String objString:lista){
			System.out.println(objString);
		}
		
	}
}
Na verdade é uma implementação que facilita você fazer loop em uma lista, pois você não precisa ficar pegando o iterate, recuperando objeto e fazer o cast, isso fica tudo encapsulado já, ou seja esse código acima é o melhoramento desse de baixo
import java.util.ArrayList;
import java.util.Iterator;

public class teste1 {

	public static void main(String[] args) {
	
		ArrayList <String> lista  = new ArrayList();
		lista.add("a");
		lista.add("b");
		lista.add("c");
		lista.add("d");
		lista.add("e");
		lista.add("f");
	
		Iterator it = lista.iterator();
		while(it.hasNext()){
			String objString = (String)it.next();
			System.out.println(objString);
		}
		
		
		
	}
}
L

Acho que as explicações dos amigos acima exemplificaram bem o q é o for…

Eu costumo chamar de forEach

for (String teste: lista){

}

Nesse código temos a seguinte estrutura:

TIPO DA LISTA + variável : NOME DA LISTA

No caso anterior dá rpa perceber claramente que a lista é de Strings e que cada vez que o for for executado será criado uma variável teste.

muito mais fácil do que usar iterator

for (Iterator it = lista.iterator();it.hasNext();){

String teste = (String) it.next

}

No caso do for com iterator havia a necessidade de se converter o objeto em uma string, mesmo sabendo que na lista só havia strings, e isso não era muito prático e assim surgiu o novo for

C

Valeu Pessoal!!! Entendi!!! :grin: :slight_smile: :wink: :!:

Criado 3 de dezembro de 2007
Ultima resposta 7 de dez. de 2007
Respostas 4
Participantes 4