Loops en Java s'utilitza quan necessitem executar repetidament un bloc d'instruccions. Java bucle do-while és un Sortida del bucle de control . Per tant, a diferència per o mentre bucle, una comprovació do-while de la condició després d'executar les instruccions del cos del bucle.
Sintaxi:
do { // Loop Body Update_expression } // Condition check while (test_expression);> Nota: El expressió_prova per al bucle do-while ha de retornar a booleà value , en cas contrari obtindríem un error en temps de compilació.
Aplicació de do-while: La seva aplicació d'exemple mostra algun tipus de menú als usuaris.
Per exemple:
Esteu implementant un joc en què mostreu algunes opcions a l'usuari, premeu 1 per fer-ho .., premeu 2 per fer-ho .. etc. i premeu 'Q' per sortir del joc. Així que aquí voleu mostrar el menú del joc a l'usuari almenys una vegada, de manera que escriviu el codi del menú del joc dins del bucle do-while.

Il·lustració:
Java
// Java Program to Illustrate One Time Iteration> // Inside do-while Loop> // When Condition IS Not Satisfied> // Class> class> GFG {> >// Main driver method> >public> static> void> main(String[] args)> >{> >// initial counter variable> >int> i =>0>;> >do> {> >// Body of loop that will execute minimum> >// 1 time for sure no matter what> >System.out.println(>'Print statement'>);> >i++;> >}> >// Checking condition> >// Note: It is being checked after> >// minimum 1 iteration> >while> (i <>0>);> >}> }> |
>
>Sortida
Print statement>
Explicació de la sortida:
Al codi anterior, vam descobrir que la condició es comprova més tard, ja que el cos interior s'executarà una vegada sense fallar, ja que la condició es comprova més endavant. Per tant, sempre que volem mostrar el menú i, més tard, continuar l'ordre al terminal, sempre fem servir el bucle do-while.
Components del bucle do-while
A. Expressió de prova: En aquesta expressió, hem de provar la condició. Si la condició s'avalua com a vertadera, executarem el cos del bucle i anirem a actualitzar l'expressió. En cas contrari, sortirem del bucle while. Per exemple:
i <= 10>
B. Expressió d'actualització : Després d'executar el cos del bucle, aquesta expressió augmenta/disminueix la variable del bucle en algun valor. Per exemple:
i++;>
Execució del bucle do-While
- El control cau en el bucle do-while.
- S'executen les declaracions dins del cos del bucle.
- Es produeix l'actualització.
- El flux salta a Condició
- La condició està provada.
- Si la condició és certa, aneu al pas 6.
- Si la condició és falsa, el flux surt fora del bucle
- El flux torna al pas 2.
Bucle do-while del diagrama de flux:

Implementació:
Exemple 1: Aquest programa intentarà imprimir Hello World 5 vegades.
Java
// Java Program to Illustrate Do-while Loop> // Class> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// Declaring and initialization expression> >int> i =>1>;> >// Do-while loop> >do> {> >// Body of do-while loop> >// Print statement> >System.out.println(>'Hello World'>);> >// Update expression> >i++;> >}> >// Test expression> >while> (i <>6>);> >}> }> |
>
>Sortida:
Hello World Hello World Hello World Hello World Hello World>
Espai auxiliar: O(1)
Explicació de la sortida:
El programa s'executarà de la següent manera:
- El programa comença.
- i s'inicialitza amb el valor 1.
- L'execució entra al bucle
- Hello World s'imprimeix per primera vegada.
- L'actualització està feta. Ara i = 2.
- L'estat està comprovat. 2 <6 dóna veritat.
- L'execució entra al bucle.
- Hello World s'imprimeix per segona vegada.
- L'actualització està feta. Ara i = 3.
- L'estat està comprovat. 3 <6 dóna veritat.
- L'execució entra al bucle
- Hello World s'imprimeix per tercera vegada
- L'actualització està feta. Ara i = 4.
- L'estat està comprovat. 4 <6 dóna veritat.
- L'execució entra al bucle
- Hello World s'imprimeix per quarta vegada
- L'actualització està feta. Ara i = 5.
- L'estat està comprovat. 5 <6 dóna veritat.
- L'execució entra al bucle
- Hello World s'imprimeix per cinquena vegada
- L'actualització està feta. Ara i = 6.
- L'estat està comprovat. 6 <6 dóna fals.
- El flux surt fora del bucle.
Exemple 2
Java
// Java Program to Illustrate Do-while Loop> // Class> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// Declaring and initializing integer values> >int> x =>21>, sum =>0>;> >// Do-while loop> >do> {> >// Execution statements(Body of loop)> >// Here, the line will be printed even> >// if the condition is false> >sum += x;> >x--;> >}> >// Now checking condition> >while> (x>>10>);> >// Summing up> >System.out.println(>'Summation: '> + sum);> >}> }> |
>
>Sortida:
Summation: 176>
Exemple 3: bucle do-while sense claus {}
Java
/*package whatever //do not write package name here */> import> java.io.*;> class> GFG {> >public> static> void> main (String[] args) {> >int> i=>1>;> >do> >// only single statement in do block> >System.out.println(>'Hello GFG!'>);> >// this condition is false so only do block will execute> >while>(i>=>3>);> > > >}> }> |
>
iterant una llista en java
>Sortida
Hello GFG!>
&list=PLqM7alHXFySF5ErEHA1BXgibGg7uqmA4_&ab_channel=techcodeview.com
Articles relacionats:
- Loops en Java
- Java For bucle amb exemples
- Java while bucle amb exemples
- Diferència entre el bucle while i do-while en C, C++, Java
- Diferència entre el bucle for i do-while en C, C++, Java