Article image
Luiz Café
Luiz Café08/02/2024 15:45
Compartilhe

Funções em Java Aprenda a Utilizar While de Maneira Simples e Prática

    Olá, comunidade da DIO!

    Entender as diferentes funções em Java pode ser uma tarefa desafiadora, não é verdade?

    Porém, com um pouco de planejamento,prática e persistência é possível que você domine uma das principais linguagens de programação do mundo. Dentre as funções em Java, temos o laço de repetição WHILE, que será explicado neste artigo.

    Não deixe de ler até o fim para entender sua importância!

    Vamos lá?

    O que é a Função em Java While?

    Essa função é muito interessante e faz parte das chamadas estruturas de repetição em Java. Ela pode ser diferenciada de outro laço de repetição, neste caso o for, pois quando estamos utilizando for, sabemos quantas vezes um bloco de instruções será repetido, já no caso do While, enquanto determinada condição for verdadeira, o código deve ser executado, até que se encontre uma condição que determine que o código seja finalizado, no caso quando a condição for falsa.

    Observe a imagem abaixo:image

    Estrutura do laço While. Fonte: adaptado de: <https://www.javatpoint.com/java-while-loop>.

    Uma observação é que caso uma condição não for verdadeira, o laço while não será executado. Por isso é importante entender sobre como essas situações possam acontecer para que não exista problemas em utilizar o WHILE.

    Sintaxe

    A Sintaxe do laço While é a seguinte:

    while (teste de condição) {
    instruções de execução;
    }
    
    

    While possui uma sintaxe considerada simples, como você pode ver no código acima. Utilizamos a palavra while com uma espécie de palavra-chave, dentro do parênteses está o nosso teste lógico, cujo retorno será verdadeiro ou falso. As chaves devem receber os trechos de código para verificar se determina condição é ou não verdadeira para, então executar o código.

    Exemplo de Código Java utilizando WHILE

    Imagine a seguinte situação: uma mãe determinou que seu filho só pode comer apenas 3 doces por dia, e como ela gosta muito de Java criou um código em Java, utilizando o laço While para determinar a quantidade de doces que ele pode consumir. Quando ultrapassar três doces ele não poderá mais comer.

    Confira como isso ficaria, utilizando While:

    import java.util.Scanner;
    
    
    public class Main {
      public static void main(String args[]) {
          int contadorDoces = 1;
          while (contadorDoces <= 3) {
              System.out.println(contadorDoces);
              if (contadorDoces == 3) {
                  System.out.println("Não pode comer mais doces");
              }
              contadorDoces++;
          }
      }
    }
    
    

    Neste código será exibido a quantidade de doces que uma criança pode comer enquanto a condição estabelecida pela mãe for verdadeira, ou seja, no máximo 3 doces. Para isso foi declarado um int, cujo nome é contadorDoces, seu valor é igual a 1.

    Logo após temos o while sendo executado dentro de uma determinada condição que está dentro do parênteses. Por fim utilizamos o if para determinar uma condição quando o número de doces for igual a 3, a mensagem exibida será: "Não pode comer mais doces."

    Vantagens do While

    Existem algumas vantagens em se utilizar o laço While, confira algumas delas:

    • Simplicidade na utilização;
    • Flexibilidade para realizar o controle das repetições;
    • Ideal para loops inderterminados;
    • Eficiente.

    Desvantagens

    Confira agora algumas desvantagens do While:

    • Loops infinitos, será detalhado a seguir;
    • Menor legibilidade comparado a outras opções existentes;
    • Pode causar alguns bugs.

    Cuidados com o Loop Infinito

    Pode acontecer de While entrar em loop infinito, ou seja não parar de ser executado por uma condição sempre for verdadeira. Para isso é preciso ter cuidado para fazer uso do While para não ter problemas de memória em seu computador com um loop infinito, ou até mesmo problemas mais graves, como travamentos.

    Sempre pense bem antes de utilizar While e o momento correto que ele deve parar de ser executado.

    Veja um exemplo de loop infinito:

    while (true) {
      System.out.println("Looooop!");
    }
    

    Este código será executado eternamente sem parar, pois é um loop infinito.

    Como evitar este problema?

    Para isso, podemos utilizar o break, ele será capaz de parar a execução do programa. O ideal mesmo e ficar atento, para não ter problemas com o seu código.

    Considerações Finais

    Neste artigo, você conheceu um pouco sobre as Funções em Java While, viu que ele pode ser utilizado quando temos a possibilidade de obter respostas verdadeiras ou falsas, os chamados booleanos. Ainda conheceu um exemplo prático de código e os cuidados para não criar um loop infinito.

    Aprender Java pode alavancar sua carreira, por isso, não deixe de investir em qualificação! Aqui na DIO temos várias opçôes diferentes, confira os Bootcamps, Formações e Cursos!

    Bons estudos!

    Referências

    Dev Media. Disponível em: <https://www.devmedia.com.br/forum/como-usar-o-while-em-java/568938>

    Gran Cursos Online. Disponível em: <https://blog.grancursosonline.com.br/estruturas-de-repeticao-while-e-do-while-da-linguagem-java/>

    Java e Linguagens de Programação. Disponível em: <https://pet-comp-ufsc.github.io/tutorials/langs/java/for-while/while.html>. Acesso 08/02/2024.

    Java Point. Disponível em: <https://www.javatpoint.com/java-while-loop>.

    Treina Web. Disponível em: <https://www.treinaweb.com.br/blog/estruturas-condicionais-e-estruturas-de-repeticao-em-java>

    Compartilhe
    Comentários (3)
    Fernando Araujo
    Fernando Araujo - 11/02/2024 11:32

    Valeu, Luiz!!

    Um dos problemas mais comuns dos iniciantes (incluindo eu, na minha época de iniciante) é esquecer de incluir uma instrução dentro do loop para alterar o valor do contador testado no while... -> LOOOOOOOOOOOP infinito!!!

    Luiz Café
    Luiz Café - 08/02/2024 18:37

    Verdade Luis, um grande problema no código o loop infinito. As vezes até mesmo o antivírus pode confundir. É preciso ter bastante atenção.

    Luis Zancanela
    Luis Zancanela - 08/02/2024 16:31

    Usar o while(true) e esquecer o break e ver que negócio gera o stackoverflow, quem nunca né 😆