terça-feira, 24 de abril de 2012

Estrutura de repetição

   Para demostrar uma estrutura de repetição vamos utilizar o "while" (enquanto), no primeiro exemplo o controle da execução é feito através da condição "loop < 10"  a variável "loop" é incrementada após cada execução do bloco.



/**
 * @author marco.bidoia@gmail.com
 */
public class LoopComWhile1 {

      public static void main(String[] args) {
           
            // Declarando a variável que controlara o while.
            int loop = 0;
            // Equanto o valor de loop for menor que 10 faça
            while (loop < 10){
                  System.out.println("O Valor de loop é: " + loop);
                  // Incrementa um valor na variável loop.
                  loop++;
            }

      }

}

O resultado da execução do programa é:

O Valor de loop é: 0
O Valor de loop é: 1
O Valor de loop é: 2
O Valor de loop é: 3
O Valor de loop é: 4
O Valor de loop é: 5
O Valor de loop é: 6
O Valor de loop é: 7
O Valor de loop é: 8
O Valor de loop é: 9



   Aqui temos outro exemplo de "loop" com "while", só que desta vez utilizamos uma forma diferente para controlar a execução do "while". Vamos controlar a execução com uma variável do tipo "boolean" chamada executar, o valor inicial da variável executar é "true" e a cada ciclo faremos uma verificação
"executar = loop < 10;" (que retorna um valor booleano) e enquanto o valor da variável "loop" for menor que 10 ela recebera "true" e continuara a execução. 


/**
 * @author marco.bidoia@gmail.com
 */
public class LoopComWhile2 {

      public static void main(String[] args) {
           
            // Declarando a variável que controlara o while.
            boolean executar = true;
            int loop = 0;
            // Equanto o valor da variável executar for true faça
            while (executar){
                  System.out.println("O Valor de loop é: " + loop);
                  // Incrementa um valor na variável loop.
                  loop++;
                  executar = loop < 10;
            }

      }

}


O resultado da execução do programa é:

O Valor de loop é: 0
O Valor de loop é: 1
O Valor de loop é: 2
O Valor de loop é: 3
O Valor de loop é: 4
O Valor de loop é: 5
O Valor de loop é: 6
O Valor de loop é: 7
O Valor de loop é: 8
O Valor de loop é: 9

   Nas duas execuções o resultado é o mesmo, a diferença é a forma que fazemos o controle de execução do laço.
   Quando trabalhamos com o laço de repetição "while" temos que tomar cuidado para ele não entrar em uma execução infinita, para isso temos que sempre garantir um controle de execução.
   No primeiro caso usamos a condição "loop < 10" e no segundo a "executar" que era controlado por uma condição interna idêntica a usada no primeiro exemplo que alterava o valor da variável "executar" para  "false"

3 comentários:

  1. Tentei usar esse código, porém ao invés de usar o "System.out.println();" , usei o "textView.setText();", pois estou desenvolvendo para android, e não deu certo aparece apenas o ultimo numero, no caso: "O valor de loop é 9". O que posso fazer?

    ResponderExcluir
  2. Cada vez que você faz o "setText" ele sobrescreve o que você tinha atribuído anteriormente. Seria mais ou menos isso uma forma de concatenar as informações:

    String textoAtual = textView.getText().toString();
    textView.setText(textoAtual + "Novo texto");

    ResponderExcluir