Pra que serve o dois-pontos (:)

 for (DistributedFile file : files)

Como isso funciona? oq faz?

vllww! xD

1 curtida

Isso é um foreach
Ele percorrerá todos os elementos de uma Collection.

1 curtida

http://java.sun.com/j2se/1.5.0/docs/guide/language/foreach.html

Até!

Um exemplo simples:

[code]ArrayList lista = new ArrayList ();
lista.add(“Java”);
lista.add(“Guj”);
lista.add(“Fórum”);

for(String s : lista) {
System.out.println(s);
}[/code]

A saída desse código será:

Java Guj Fórum

Mais dá uma lida no link que o maquiavelbona passou pra vc entender melhor…

T+

[quote=lsr] for (DistributedFile file : files)

Como isso funciona? oq faz?

vllww! xD[/quote]

Se a sua variavel files for uma lista, o codigo equivalente seria mais ou menos assim.

for (int i = 0; i < files.size(); i++) { DistributedFile file = files.get(i)

Na verdade, não. A construção, em nível de byte-code, é mais parecida com um uso obscuro do iterator.
Teste esse código :

[code] import java.util.ArrayList;
import java.util.Iterator;
public class TesteFor {
public static void main(String[] args) {
ArrayList listaTeste = new ArrayList();
listaTeste.add(“String 1”);
listaTeste.add(“String 2”);
listaTeste.add(“String 3”);
System.out.println(“Maneira 1 de fazer o for”);
Iterator it = listaTeste.iterator();
do{
String nome = (String) it.next();
System.out.println(nome);
}while(it.hasNext());

	System.out.println("Maneira 2 de fazer o for");
	for (String string : listaTeste) {
		System.out.println(string);
	}
	System.out.println("Maneira 3 de fazer o for");
	for(Iterator i = listaTeste.iterator();i.hasNext();){
		String var = (String) i.next();
		System.out.println(var);
	}
	System.out.println("Maneira 4 de fazer o for");
	for(int i = 0; i< listaTeste.size();i++){
		System.out.println(listaTeste.get(i));
	}

}

}[/code]
Compile e depois rode javap -verbose.

Até!

MTOOO OBRIGADO galera…
duvida sanada… XD

vlw msm