2
respostas

O "do" pode ficar sozinho?

Olá pessoal. Não entendi a estrutura desse do...while. O "do" está sozinho no código. Por que isso é permitido?

class A {
    public static void main(String[] args) {
        int i = 0;
        do; while(i++<10);
    }
}
2 respostas

É uma forma de demonstrar que é possível fazer um laço que não executa nada (não tem nenhuma instrução a ser executada).

O código acima fará um laço enquanto o valor de i for menor que 10, mas não executará nenhuma instrução.

Não tem um valor prático, mas poderia ser usado para dar uma pausa na execução (gambiarra) se o valor de i fosse, por exemplo, até 50000.

Eu fiquei sem entender o ponto e vírgula ao final do "do"... o correto não seria:

class A {
    public static void main(String[] args) {
        int i = 0;
        do
        while(i++<10);
    }
}