2
respostas

Declaração de variavel contador

Professor por que quando declaramos uma variável fora do for ele não reconhece mesmo a variável estando dentro do método main não ficou claro para mim, o motivo no qual a variável não fica visível para que possa ser chamada dentro do for.

2 respostas

Oi Priscila, tudo bom?

Acho que rolou alguma confusão aqui.

o motivo no qual a variável não fica visível para que possa ser chamada dentro do for.

Uma variavel declarada fora do for é acessivel dentro do for.

Em relação a variavel contador, especificamente, ela é declarada junto do for. Por isso, não é visivel fora dele.

Se há a necessidade do contador fora do escopo do laço de repetição, podemos usar o while inicializando o contador no escopo do método main =)

Abraço!

Priscila, quando assistir a aula, a variável contador fazia parte do for, exemplo:


public class TestaFor {

    public static void main(String[] args) {

        for (int contador = 0; contador < 11; contador++) {
            System.out.println(contador);
        }
    }
}

Pensando na sua pergunta, se você deixar dentro de um escopo (tudo que está dentro das chaves > {} ) a variável e pensar em usa-la fora do escopo, não da certo, pois ela não existe fora do escopo, exemplo:


public class TestaFor {

    public static void main(String[] args) {

        for (int contador = 0; contador < 11; contador++) {
            int xpto = contador;
            //System.out.println(contador);
        }
        System.out.println(xpto);
    }
}

Se você pegar o código acima vai da pau, pois a variável xpto foi declarada dentro do escopo do for, mas estou tentando usa-lá fora do escopo do for.

Espero que te ajude, deixei os dois códigos para você colar na IDE e testa-los.