# Funcionamento do Loop e sintaxe do-while em Java

Com o loop do-while do Java, você garante que o programa execute instruções até que uma condição de terminaçã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 cancelamento definida seja satisfeita**, ou seja, “true” (verdadeira). Existem loops semelhantes na maioria das linguagens de programação, onde são utilizados para executar determinados 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:

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

A estrutura começa com a palavra-chave «do». Em seguida, encontram-se as instruçõ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 terminação. Esta é sempre formulada como uma **expressão booleana** e, portanto, na lógica do programa, pode ser «true» (verdadeira) 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.

## Funcionamento dos loops

Quando o loop do-while do Java é executado, o programa procura as instruções dentro do corpo do loop e as executa. Depois de concluir isso, ele verifica a condição de cancelamento. Se ela for “true” (ou seja, ainda não foi cumprida), o loop começa do início e repete todas as instruções até ser verificado novamente. No entanto, assim que a condição de cancelamento é 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 funcionamento do loop, mostraremos a sua estrutura com um exemplo simples. Para isso, definimos um valor x como 10. Com a ajuda do operador Java “++”, este valor será incrementado em 1 a cada passagem e será mostrado com o comando Java `System.out.println`. A nossa condição de cancelamento é o valor 20, portanto, o loop se repete enquanto o valor x for menor que 20. O código será o seguinte:

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

Se executarmos este código, obteremos o seguinte resultado:

```java
10 
11 
12 
13 
14 
15 
16 
17 
18 
19
```

Em seguida, o programa executará novamente o loop, mas reconhecerá que o valor de x é 20. Como já não é inferior a 20, a condição de cancelamento é satisfeita 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 cancelamento. Para terminar o loop, deve-se **utilizar manualmente a combinação \[Ctrl\] + \[C\]**. O código terá este aspeto:

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

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

```java
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
```

Se não encerrar o loop manualmente, ele continuará a ser executado.

## Diferença entre do-while e while

Em muitos aspetos, o ciclo do-while e o while são muito semelhantes. No entanto, diferem num aspecto: enquanto o loop while verifica a condição de cancelamento **logo no início**, o loop do-while é executado primeiro **pelo menos uma vez por completo** e termina depois. Portanto, se quiser executar as instruções pelo menos uma vez, deve optar por esta solução. Se a determinação do cancelamento for crucial, pode utilizar o loop while em vez disso.


This is a markdown version of: [https://www.ionos.com/pt-pt/digitalguide/paginas-web/desenvolvimento-web/loop-do-while-em-java/](https://www.ionos.com/pt-pt/digitalguide/paginas-web/desenvolvimento-web/loop-do-while-em-java/) for AI/LLM consumption.