1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

pequena dúvida Java

Discussão em 'Programação' iniciada por Beware, 27 de Fevereiro de 2009. (Respostas: 7; Visualizações: 611)

  1. Beware

    Beware What is folding?

    Boas, pessoal, tenho um dúvida que provavelmente deve ser muito simples para vocês, mas que me está a partir um pouco a cabeça.

    Será que alguém me consegue explicar de forma sucinta, o que significa, isto é, o que faz/qual é a sua função,

    Código:
    for(File fileDir: files)
    por exemplo, uma pequena implementação:

    Código:
     static void lsDir(File fin, String fout)
      {
        assert fin != null;
        
        File[] files = fin.listFiles();
        for(File fileDir: files){
          if(fileDir.isDirectory())
            lsDir(fileDir, fout);
              else if(fileDir.getName().equals(fout))
                out.println(fileDir.getAbsolutePath());}
            
      }
      }
    obrigado desde já.;)
     
  2. Baderous

    Baderous Banido

    Para cada objecto fileDir do tipo File, presente no array files...
    O fileDir é só uma forma de referenciar cada objecto do array através de um nome.
     
  3. Beware

    Beware What is folding?

    Obrigado, apenas uma última questão. Seria possivel transformá-lo num "for" ou "while" sem grandes modificações?

    Obrigado pela resposta rápida.
     
  4. Baderous

    Baderous Banido

    Não era preciso mudar muita coisa:
    Código:
    File fileDir = null;
    int i;
    for (i=0;i<files.length;i++) {
        fileDir = files[i];
         ...
    E o resto era igual.
     
  5. legerdemain

    legerdemain Power Member

    Mas aquilo é um for
     
  6. Beware

    Beware What is folding?

    ;)
    sim, eu sei.

    Expremi-me mal, o Baderous percebeu!!! :p

    Obrigadão.
     
  7. _freelancer_

    _freelancer_ Power Member

    Explicitamente falando é um for, mas na gíria até se pode chamar de "for each". Isto porque existem linguagens (o Java não é o caso, até porque este tipo de for é recente no Java) onde este for é explicitamente chamado de "for each".

    O nome ajuda a perceber a noção do que é na prática:

    for(File fileDir: files){

    "for each fileDir in files"

    i.e. "para cada fileDir, do tipo File, que existe na colecção files"
     
  8. guilherme

    guilherme Power Member

    Em parte veio acabar com os belos dos iteradores que tanto me irritam, o prob é que a maioria das empresas ainda usa o 1.4.
    De qualquer das formas na minha opinião deviam ter diferenciado e como acontece noutras linguagens deveria ser mesmo foreach
     

Partilhar esta Página