Dúvida simples - laço for  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
fanama
JavaTeenager

Membro desde: 21/05/2007 16:32:57
Mensagens: 176
Localização: Socorro - SP
Offline

Olá Pessoal;
Boa tarde!

Estou analisando um código e me surgiu uma dúvida:



Sempre utilizei o comando "for" da seguinte maneira:



Nunca tinha visto o laço for com dois pontos. Poderiam me explicar como funciona o for desta maneira?

Obrigado!

Marco Aurélio>

"A boca fala do que está cheio o coração"
[Email] [MSN]
jgbarros
Entusiasta Java

Membro desde: 01/11/2007 16:31:48
Mensagens: 24
Localização: Cuiabá - MT
Offline

Basicamente funciona da mesma forma, mas na hora de gerar o bytecode ele faz uma série de checagens e conversões, usando Iterator para percorrer a lista.

No livro da Keith Sierra (SCJP 1.6) explica em mais detalhes.

João Guilherme ツ
Analista Desenvolvedor Java - SCJP 1.5
Better is one day in your courts than a thousand elsewhere!
[WWW]
carlosbarbero
Thread.start()

Membro desde: 16/08/2009 11:40:17
Mensagens: 26
Offline

Oi, esse for é conhecido como foreach.

Ele surgiu a partir do java 5.

Com o forreach surgiu a facilidade de percorrecor os elementos de um array ou uma lista.

Exemplo sem o foreach:

String[] nomes = new String[] {"Jose", "Antonio"}; //Uma variavel array que tem 2 nomes


for (int i = 0; i < nomes.length; i++) { // For que percorre as posições do array
System.out.println(nomes[i]);
}

Exemplo com foreach:

String[] nomes = new String[] {"Jose", "Antonio"}; //Um variavel arry que tem 2 nomes


for (String valor : nomes) { //Aqui é que está toda a "mágica". Você declara uma variável correspondente aos valores
//armazenados no array inseri ":" e passa a variável array como parametro.
System.out.println(valor);
}

Agora o foreach só pode ser utilizado para percorrer os elementos e não para atribuir algum valor.
OBS: O foreach pode ser utilizado para percorrer array ou qualquer tipo de lista.

Espero ter ajudado!
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

É também conhecido por enhanced for...

abraço, AS

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
julianofischer
JavaGuru
[Avatar]

Membro desde: 05/12/2007 20:05:51
Mensagens: 209
Offline



Funciona assim:

 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team