For?

6 respostas
Renan_Amaro

Olá estou com uma dúvida estouestudando a apostila Caelum e tem uma parte de um códio que está assim

for (Conta conta : contas)

o que isso faz exatamente, o Conta seria um objeto

6 Respostas

Pedrosa

Percorre uma lista de contas, esse for é o foreach, Sim conta é um objeto:

Onde deve ter sido montado algo assim

List<Conta> contas = new ArrayList<Conta>();
for(int i = o; i<10;i++){
   Conta conta = new Conta();
   conta.setNumero(i);
   contas.add(conta)
}
for(Conta conta: contas){
   System.out.println(conta.getNumero());
}
crpablo

Isso é um foreach…

Dá uma olhada aki: http://www.ibm.com/developerworks/java/library/j-forin.html

abraço

peerless

A sua sintaxe é:

for ( : <coleção a ser percorrida> ) { fluxo; }

for (String nome : listaStrings) { System.out.println("String corrente: "+nome); }

seria o mesmo que:

for (int i = 0; i < listaStrings.length; i++) { System.out.println("String corrente: "+listaStrings[i]); }

G

Um outro exemplo...

class TestaMatriz {

	public static void main(String args[]) {
	
		int[] idades = new int[10];
			
			for (int i = 0; i < 10; i++) {
			idades[i] = i * 10;
			}
			

			for (int i : idades) {
			System.out.println("Idades: " + i);
			}
	}

}
LPJava

a diferença para o for tradicional, que ja conhecemos de outras linguaguens é que o foreach vc nao precisa definir o tamanho do array ou conjunto ele mesmo se encarrega de fazer isso, ou seja, com o foreach é usado quando vc quer sempre precorrer TODO o conjunto. Porem vale lembrar q ele nao inativa o outro ja que no for tradicional posso querer percorrer ate a posicao X do meu array/conjunto.

foreach disponivel apenas na versao java 1.5 ou superior .

Renan_Amaro

Obrigado Pessoal :wink: !!!

Criado 8 de fevereiro de 2008
Ultima resposta 8 de fev. de 2008
Respostas 6
Participantes 6