Loops en Java s'utilitza quan necessitem executar repetidament un bloc d'instruccions. Java per bucle proporciona una manera concisa d'escriure l'estructura del bucle. La instrucció for consumeix la inicialització, la condició i l'increment/decrement en una línia, proporcionant així una estructura de bucle més curta i fàcil de depurar. Anem a entendre Java for bucle amb exemples.
Sintaxi:
for (initialization expr; test expr; update exp) { // body of the loop // statements we want to execute }> Parts de Java For Loop
Java for loop es divideix en diverses parts, tal com s'esmenta a continuació:
- Expressió d'inicialització
- Expressió de prova
- Actualitza l'expressió
1. Expressió d'inicialització
En aquesta expressió, hem d'inicialitzar el comptador de bucles a algun valor.
Exemple:
int i=1;>
2. Expressió de prova
En aquesta expressió, hem de provar la condició. Si la condició s'avalua com a certa, executarem el cos del bucle i anirem a l'expressió d'actualització. En cas contrari, sortirem del bucle for.
Exemple:
i <= 10>
3. Actualitza l'expressió :
Després d'executar el cos del bucle, aquesta expressió augmenta/disminueix la variable del bucle en algun valor.
Exemple:
i++;>
Com funciona un bucle For?
- El control cau en el bucle for. La inicialització està feta
- El flux salta a Condició
- La condició està provada.
- Si la condició és certa, el flux entra al cos
- Si la condició és falsa, el flux surt fora del bucle
- S'executen les declaracions dins del cos del bucle.
- El flux va a l'Actualització
- L'actualització té lloc i el flux torna al pas 3
- El bucle for ha acabat i el flux ha sortit a l'exterior.
Diagrama de flux For for bucle a Java

Diagrama de flux per a bucle a Java
Exemples de bucle For de Java
Exemple 1: ( Aquest programa imprimirà de l'1 al 10)
Java
/*package whatever //do not write package name here */> // Java program to write a code in for loop from 1 to 10> class> GFG {> >public> static> void> main(String[] args)> >{> >for> (>int> i =>1>; i <=>10>; i++) {> >System.out.println(i);> >}> >}> }> |
>
>Sortida
1 2 3 4 5 6 7 8 9 10>
Exemple 2: Aquest programa intentarà imprimir Hello World 5 vegades.
Java
urfi javed
// Java program to illustrate for loop> class> forLoopDemo {> >public> static> void> main(String args[])> >{> >// Writing a for loop> >// to print Hello World 5 times> >for> (>int> i =>1>; i <=>5>; i++)> >System.out.println(>'Hello World'>);> >}> }> |
>
>Sortida
Hello World Hello World Hello World Hello World Hello World>
La complexitat del mètode:
Complexitat temporal: O(1)
Espai auxiliar: O(1)
Exemple 1 de funcionament en sec
El programa s'executarà de la següent manera.
- El programa comença.
- i s'inicialitza amb el valor 1.
- L'estat està comprovat. 1 <= 5 dóna veritat.
- Hello World s'imprimeix per primera vegada.
- L'actualització està feta. Ara i = 2.
- L'estat està comprovat. 2 <= 5 dóna veritat.
- Hello World s'imprimeix per segona vegada.
- L'actualització està feta. Ara i = 3.
- L'estat està comprovat. 3 <= 5 dóna veritat.
- Hello World s'imprimeix per tercera vegada
- L'actualització està feta. Ara i = 4.
- L'estat està comprovat. 4 <= 5 dóna veritat.
- Hello World s'imprimeix per quarta vegada
- L'actualització està feta. Ara i = 5.
- L'estat està comprovat. 5 <= 5 dóna veritat.
- Hello World s'imprimeix per cinquena vegada
- L'actualització està feta. Ara i = 6.
- L'estat està comprovat. 6 <= 5 dóna fals.
- El flux surt fora del bucle. El programa finalitza.
Exemple 3: (El programa imprimeix la suma de x que va d'1 a 20)
Java
// Java program to illustrate for loop.> class> forLoopDemo {> >public> static> void> main(String args[])> >{> >int> sum =>0>;> >// for loop begins> >// and runs till x <= 20> >for> (>int> x =>1>; x <=>20>; x++) {> >sum = sum + x;> >}> >System.out.println(>'Sum: '> + sum);> >}> }> |
>
>Sortida
mapa_desordenat c++
Sum: 210>
For Loop niat a Java
Java Anidat For Loop és un concepte d'utilitzar un bucle for dins d'un altre bucle for (similar a l'ús imbricat if-else). Entenem-ho amb un exemple esmentat a continuació:
Java
// Java Program to implement> // Nested for loop> import> java.io.*;> // Driver Class> class> GFG {> >// main function> >public> static> void> main(String[] args)> >{> >// Printing a 1 to 5 (5 times)> >// first loop> >for> (>int> i =>1>; i <=>5>; i++) {> >// second loop> >for> (>int> j =>1>; j <=>5>; j++) {> >System.out.print(j +>' '>);> >}> >System.out.println();> >}> >}> }> |
>
>Sortida
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5>
Per obtenir més informació sobre els bucles imbricats, consulteu Bucles imbricats a Java .
Java per a cada bucle
Millora For Loop o Java For-Each bucle en Java és una altra versió del bucle for introduïda a Java 5. El bucle for millorat proporciona una manera més senzilla d'iterar a través dels elements d'una col·lecció o matriu. És inflexible i només s'ha d'utilitzar quan hi ha la necessitat d'iterar els elements de manera seqüencial sense conèixer l'índex de l'element processat actualment.
Nota: L'objecte/variable és immutable quan s'utilitza el bucle millorat, és a dir, assegura que els valors de la matriu no es poden modificar, de manera que es pot dir com un bucle de només lectura on no podeu actualitzar els valors a diferència d'altres bucles. on es poden modificar els valors.
Sintaxi:
for (T element:Collection obj/array) { // loop body // statement(s) }> Prenguem un exemple per demostrar com es pot utilitzar el bucle per millorat per simplificar el treball. Suposem que hi ha una matriu de noms i volem imprimir tots els noms d'aquesta matriu. Vegem la diferència entre aquests dos exemples mitjançant aquesta senzilla implementació:
Java
// Java program to illustrate enhanced for loop> public> class> enhancedforloop {> >// Main Function> >public> static> void> main(String args[])> >{> >// String array> >String array[] = {>'Ron'>,>'Harry'>,>'Hermoine'> };> >// enhanced for loop> >for> (String x : array) {> >System.out.println(x);> >}> >/* for loop for same function> >for (int i = 0; i { System.out.println(array[i]); } */ } }> |
>
>Sortida
Ron Harry Hermoine>
Complexitat del mètode anterior:
Complexitat temporal: O(1)
Espai auxiliar: O(1)
Recomanació: Utilitzeu aquesta forma de declaració en lloc de la forma general sempre que sigui possible. (segons el document JAVA.)
usuaris de la llista mysql
Java Infinite for Loop
Aquest és un bucle infinit, ja que la condició mai tornaria falsa. El pas d'inicialització és configurar el valor de la variable i a 1, ja que estem incrementant el valor de i, sempre seria més gran que 1 de manera que mai no tornaria fals. Això conduiria finalment a la condició de bucle infinit.
Exemple:
Java
// Java infinite loop> class> GFG {> >public> static> void> main(String args[])> >{> >for> (>int> i =>1>; i>=>1>; i++) {> >System.out.println(>'Infinite Loop '> + i);> >}> >}> }> |
>
>
Sortida
Infinite Loop 1 Infinite Loop 2 ...>
Hi ha un altre mètode per cridar el bucle infinit
Si en feu servir dos punt i coma;; en el bucle for, serà infinitiu per a un bucle.
Sintaxi:
for(;;){ //code to be executed }> Exemple:
Java
public> class> GFG {> >public> static> void> main(String[] args)> >{> >for> (;;) {> >System.out.println(>'infinitive loop'>);> >}> >}> }> |
>
>
Sortida
infinitive loop infinitive loop ....>
Preguntes freqüents sobre Java for Loop
1. Què és un bucle for a Java?
El bucle for a Java és un tipus de bucle utilitzat per a l'execució repetitiva d'un codi de bloc fins que es compleix la condició.
2. Quina és la sintaxi del bucle for?
La sintaxi del bucle for s'esmenta a continuació:
for (initialization expr; test expr; update exp) { // body of the loop // statements we want to execute }> 3. Per què s'utilitza un bucle for?
El bucle For s'utilitza quan necessitem repetir les mateixes declaracions durant un nombre conegut de vegades.
Cal consultar:
- Loops en Java
- For Loop a Java | Punts importants
- Comprensió dels bucles for a Java
- Java while bucle amb exemples
- Bucle do-while de Java amb exemples
- Per a cada bucle a Java
- Diferència entre el bucle for i while en C, C++, Java
- Diferència entre el bucle for i do-while en C, C++, Java