GARANTIR DESCONTO

Fórum while e do...while #526849

25/07/2015

0

Aparentemente funciona da mesma forma, pelo menos o mesmo resultado, só internamente que possui diferenças, existe a melhor solução para o uso do while, do...while? Qual?

Exemplo 1 - While:



import java.util.Scanner;

public class UsandoWhile {

    
    public static void main(String[] args) {
        
        Scanner entrada = new Scanner( System.in ); 
        
        System.out.println(" Digite 1 para sair ");
        int condicao = entrada.nextInt();
        
        while ( condicao != 1 ) {
            System.out.println("Você digitou o numero " + condicao);
            
            System.out.println(" Digite 1 para sair ");
            condicao = entrada.nextInt();
        }
        System.out.println(" Até logo ");
    }
    
}



Exemplo 2 - Do ... While:



import java.util.Scanner;

public class UsandoWhile {

    
    public static void main(String[] args) {
        
        Scanner entrada = new Scanner( System.in );
        
        int condicao = 0;
        
        do {            
            System.out.println(" Digite 1 para sair ");
            condicao = entrada.nextInt();
            System.out.println("Você digitou o numero " + condicao);
            
        } while ( condicao != 1 );
        
         System.out.println(" Até logo ");
    }   
}


Felipe Moreira

Felipe Moreira

Responder

Post mais votado

29/07/2015

Não entendi exatamente o que você quer saber, porém, a diferença entre o uso dos dois é que no caso do do...while, ele verifica a condição ao FINAL da iteração, ou seja, executa todo o laço PELO MENOS 1 VEZ, pra depois validar, enquanto no while normal ele valida antes de entrar, então pode ser que execute n vezes ou nenhuma.

Tem casos em que é preciso executar a lógica pelo menos uma vez, pra depois verificar uma condição, estilo "faça isso e veja se a condição foi satisfeita, caso não, faça novamente".

Não sei se era exatamente isso que você queria saber, mas não tem a melhor forma, tem a que atende melhor o caso que você está tentando resolver, geralmente da pra escrever o mesmo algoritmo usando as duas formas, mas uma delas vai ser mais coerente do que a outra.

Kennedy Oliveira

Kennedy Oliveira
Responder

Gostei + 4

Mais Posts

29/07/2015

Felipe Moreira

Era minha dificuldade em entender, mas pelo que escreveu ajuda bastante!
Responder

Gostei + 0

29/07/2015

Janaina Mendes

Um complemento ao que Kennedy disse:

[url]https://www.devmedia.com.br/while-e-do-while-lacos-de-repeticoes-estrutura-da-linguagem-parte-1/18870[/url]
Responder

Gostei + 0

29/07/2015

Carinhalegal

Não te entendi rapaz.
Responder

Gostei + 0

29/07/2015

Felipe Moreira

??????????????
Responder

Gostei + 0

30/07/2015

Janaina Mendes

Aparece cada uma!!! Sei não viu!
Responder

Gostei + 0

03/08/2015

Ronaldo Lanhellas

Aparentemente funciona da mesma forma, pelo menos o mesmo resultado, só internamente que possui diferenças, existe a melhor solução para o uso do while, do...while? Qual?

Exemplo 1 - While:



import java.util.Scanner;

public class UsandoWhile {

    
    public static void main(String[] args) {
        
        Scanner entrada = new Scanner( System.in ); 
        
        System.out.println(" Digite 1 para sair ");
        int condicao = entrada.nextInt();
        
        while ( condicao != 1 ) {
            System.out.println("Você digitou o numero " + condicao);
            
            System.out.println(" Digite 1 para sair ");
            condicao = entrada.nextInt();
        }
        System.out.println(" Até logo ");
    }
    
}



Exemplo 2 - Do ... While:



import java.util.Scanner;

public class UsandoWhile {

    
    public static void main(String[] args) {
        
        Scanner entrada = new Scanner( System.in );
        
        int condicao = 0;
        
        do {            
            System.out.println(" Digite 1 para sair ");
            condicao = entrada.nextInt();
            System.out.println("Você digitou o numero " + condicao);
            
        } while ( condicao != 1 );
        
         System.out.println(" Até logo ");
    }   
}




Resumindo:

1) while - Usado para iterar enquanto aquela condição for verdadeira, podendo não ser executado NENHUMA VEZ.
2) do..while - Usado para iterar enquanto aquele condição for verdadeira, sendo que SEMPRE SERÁ EXECUTADO PELO MENOS 1 VEZ.
Responder

Gostei + 0

03/08/2015

Felipe Moreira

Boa tarde Ronaldo, obrigado pela ajuda tambem, nenhuma informação extra por mim não será descartada! Ler as varias formas entendimento me é util!
Responder

Gostei + 0

04/08/2015

Ronaldo Lanhellas

Boa tarde Ronaldo, obrigado pela ajuda tambem, nenhuma informação extra por mim não será descartada! Ler as varias formas entendimento me é util!



Correto, bons estudos.
Responder

Gostei + 0

04/08/2015

Felipe Moreira

Obrigado!
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar