Com o loop do-while do Java, você garante que o programa execute ins­tru­ções até que uma condição de ter­mi­na­ção definida seja alcançada. O loop também pode ser combinado com outras funções.

O que é o loop do-while em Java?

O loop do-while é utilizado em Java para executar e repetir uma instrução até que uma condição de can­ce­la­mento definida seja sa­tis­feita, ou seja, “true” (ver­da­deira). Existem loops se­me­lhan­tes na maioria das lin­gua­gens de pro­gra­ma­ção, onde são uti­li­za­dos para executar de­ter­mi­na­dos blocos de código várias vezes. O loop também pode ser combinado com outras funções. Em Java, o loop do-while é uma variante do loop while.

Sintaxe do-while em Java

A sintaxe do loop do-while em Java sempre tem esta estrutura:

do { 
//Instrucciones 
} 
while(Condicion);
java

A estrutura começa com a palavra-chave «do». Em seguida, encontram-se as ins­tru­ções ou a instrução que o programa deve executar. Após o bloco de código, segue-se a palavra-chave «while», que inicia a condição de ter­mi­na­ção. Esta é sempre formulada como uma expressão booleana e, portanto, na lógica do programa, pode ser «true» (ver­da­deira) ou «false» (falsa). Um exemplo popular e prático de tal expressão é uma variável de contagem, com a qual é possível controlar quantas vezes a execução será repetida.

Fun­ci­o­na­mento dos loops

Quando o loop do-while do Java é executado, o programa procura as ins­tru­ções dentro do corpo do loop e as executa. Depois de concluir isso, ele verifica a condição de can­ce­la­mento. Se ela for “true” (ou seja, ainda não foi cumprida), o loop começa do início e repete todas as ins­tru­ções até ser ve­ri­fi­cado novamente. No entanto, assim que a condição de can­ce­la­mento é cumprida e, portanto, é “false”, o programa termina o loop e continua com o resto do código.

Exemplo de um loop simples

Para ilustrar o fun­ci­o­na­mento do loop, mos­tra­re­mos a sua estrutura com um exemplo simples. Para isso, definimos um valor x como 10. Com a ajuda do operador Java “++”, este valor será in­cre­men­tado em 1 a cada passagem e será mostrado com o comando Java System.out.println. A nossa condição de can­ce­la­mento é o valor 20, portanto, o loop se repete enquanto o valor x for menor que 20. O código será o seguinte:

public class Main { 
public static void main(String[] args) { 
int x = 10; 
do { 
System.out.println(x); 
x++; 
} 
while (x < 20); 
} 
}
java

Se exe­cu­tar­mos este código, obteremos o seguinte resultado:

10 
11 
12 
13 
14 
15 
16 
17 
18 
19
java

Em seguida, o programa executará novamente o loop, mas re­co­nhe­cerá que o valor de x é 20. Como já não é inferior a 20, a condição de can­ce­la­mento é sa­tis­feita e o loop do-while termina.

Criar um loop infinito com o valor «true»

Com a ajuda da expressão booleana «true», é possível criar um loop infinito com do-while. Este nunca irá parar por si mesmo, uma vez que não é possível atingir nenhuma condição de can­ce­la­mento. Para terminar o loop, deve-se utilizar ma­nu­al­mente a com­bi­na­ção [Ctrl] + [C]. O código terá este aspeto:

public class Main { 
public static void main(String[] args) { 
do { 
System.out.println("Estás en un bucle sin fin."); 
} 
while(true); 
} 
}
java

Ao executar este código, obterá o seguinte resultado:

Estás en un bucle sin fin. 
Estás en un bucle sin fin. 
Estás en un bucle sin fin. 
Estás en un bucle sin fin. 
Estás en un bucle sin fin. 
ctrl+c
java

Se não encerrar o loop ma­nu­al­mente, ele con­ti­nu­ará a ser executado.

Diferença entre do-while e while

Em muitos aspetos, o ciclo do-while e o while são muito se­me­lhan­tes. No entanto, diferem num aspecto: enquanto o loop while verifica a condição de can­ce­la­mento logo no início, o loop do-while é executado primeiro pelo menos uma vez por completo e termina depois. Portanto, se quiser executar as ins­tru­ções pelo menos uma vez, deve optar por esta solução. Se a de­ter­mi­na­ção do can­ce­la­mento for crucial, pode utilizar o loop while em vez disso.

Ir para o menu principal