Declarando Variáveis de Controle de Laço Dentro do for

Java para Iniciantes (Oracle) - Jul 13 - - Dev Community

Conceito

  • É possível declarar a variável de controle diretamente na declaração do laço for.
  • Isso é útil quando a variável só é necessária dentro do próprio laço.

Vantagens

  • Melhora a legibilidade e organização do código.
  • Limita o escopo da variável ao laço, reduzindo a possibilidade de erros.

Exemplo

  • O programa a seguir calcula a soma e o fatorial dos números de 1 a 5, declarando a variável de controle i dentro do for:
// Declara a variável de controle de laço dentro de for.
class ForVar {
    public static void main(String args[]) {
        int sum = 0;
        int fact = 1;
        // calcula o fatorial dos números até 5
        for(int i = 1; i <= 5; i++) {
            sum += i; // i é conhecida em todo o laço
            fact *= i;
        }
        // mas não é conhecida aqui
        System.out.println("Sum is " + sum);
        System.out.println("Factorial is " + fact);
    }
}

Enter fullscreen mode Exit fullscreen mode

Importante
O escopo da variável declarada dentro do for é limitado ao laço.
Fora do for, a variável não é acessível:

// Declaração correta dentro do for
for (int i = 0; i < 5; i++) {
    System.out.println(i); // i é acessível aqui
}
// System.out.println(i); // Erro: i não é conhecida fora do laço

Enter fullscreen mode Exit fullscreen mode

Uso e Limitações

Declare a variável dentro do for quando ela não for necessária fora do laço.
Se precisar usar a variável fora do laço, declare-a antes do for:

int i; // Declarada fora do laço
for (i = 0; i < 5; i++) {
    System.out.println(i);
}
// i é acessível aqui
System.out.println("Final value of i: " + i);

Enter fullscreen mode Exit fullscreen mode

Exploração

Teste variações do laço for para entender melhor sua flexibilidade e comportamento.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player