logo

Boucle For en Java

Boucles en Java entrent en jeu lorsque nous devons exécuter à plusieurs reprises un bloc d’instructions. Java pour la boucle fournit une manière concise d’écrire la structure de la boucle. L'instruction for consomme l'initialisation, la condition et l'incrémentation/décrémentation sur une seule ligne, fournissant ainsi une structure de boucle plus courte et facile à déboguer. Comprenons la boucle Java for avec des exemples.

Boucle For en Java

Syntaxe:



for (initialization expr; test expr; update exp) {  // body of the loop  // statements we want to execute }>

Parties de Java For Loop

La boucle Java for est divisée en plusieurs parties comme mentionné ci-dessous :

  • Expression d'initialisation
  • Tester l'expression
  • Mettre à jour l'expression

1. Expression d'initialisation

Dans cette expression, nous devons initialiser le compteur de boucles à une certaine valeur.

Exemple:



int i=1;>

2. Tester l'expression

Dans cette expression, nous devons tester la condition. Si la condition est alors vraie, nous exécuterons le corps de la boucle et accéderons à l’expression de mise à jour. Sinon, nous sortirons de la boucle for.

Exemple:

i <= 10>

3. Mettre à jour l'expression :

Après avoir exécuté le corps de la boucle, cette expression incrémente/décrémente la variable de boucle d'une certaine valeur.



Exemple:

i++;>

Comment fonctionne une boucle For ?

  1. Le contrôle tombe dans la boucle for. L'initialisation est terminée
  2. Le flux passe à la Condition
  3. L'état est testé.
    • Si la condition est vraie, le flux va dans le corps
    • Si la condition donne faux, le flux sort de la boucle
  4. Les instructions à l'intérieur du corps de la boucle sont exécutées.
  5. Le flux va vers la mise à jour
  6. La mise à jour a lieu et le flux passe à nouveau à l'étape 3.
  7. La boucle for est terminée et le flux est sorti.

Organigramme pour la boucle for en Java

Organigramme pour la boucle en Java

Organigramme pour la boucle en Java

Exemples de boucle For Java

Exemple 1: ( Ce programme imprimera 1 à 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);> >}> >}> }>

>

>

Sortir

1 2 3 4 5 6 7 8 9 10>

Exemple 2 : Ce programme tentera d'imprimer Hello World 5 fois.

Java


lois d'équivalence



// 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'>);> >}> }>

>

>

Sortir

Hello World Hello World Hello World Hello World Hello World>

La complexité de la méthode :

Complexité temporelle : O(1)
Espace Auxiliaire : O(1)

Exemple de marche à sec 1

Le programme s'exécutera de la manière suivante.

  1. Le programme démarre.
  2. i est initialisé avec la valeur 1.
  3. L'état est vérifié. 1 <= 5 donne vrai.
    1. Hello World est imprimé pour la première fois.
    2. La mise à jour est effectuée. Maintenant, je = 2.
  4. L'état est vérifié. 2 <= 5 donne vrai.
    1. Hello World est imprimé une deuxième fois.
    2. La mise à jour est effectuée. Maintenant, je = 3.
  5. L'état est vérifié. 3 <= 5 donne vrai.
    1. Hello World est imprimé pour la troisième fois
    2. La mise à jour est effectuée. Maintenant, je = 4.
  6. L'état est vérifié. 4 <= 5 donne vrai.
    1. Hello World est imprimé pour la 4ème fois
    2. La mise à jour est effectuée. Maintenant, je = 5.
  7. L'état est vérifié. 5 <= 5 donne vrai.
    1. Hello World est imprimé pour la 5ème fois
    2. La mise à jour est effectuée. Maintenant, je = 6.
  8. L'état est vérifié. 6 <= 5 donne faux.
  9. Le flux sort de la boucle. Le programme se termine.

Exemple 3 : (Le programme imprime la somme de x allant de 1 à 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);> >}> }>

>

>

Sortir

Sum: 210>

Boucle For imbriquée en Java

Java Nested For Loop est un concept consistant à utiliser une boucle for dans une autre boucle for (similaire à celle de l'utilisation de if-else imbriquée). Comprenons cela avec un exemple mentionné ci-dessous :

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();> >}> >}> }>

>

>

Sortir

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>

Pour en savoir plus sur les boucles imbriquées, reportez-vous Boucles imbriquées en Java .

Boucle Java pour chaque

Boucle For améliorée ou Boucle Java pour chaque dans Java est une autre version de la boucle for introduite dans Java 5. La boucle for améliorée offre un moyen plus simple de parcourir les éléments d'une collection ou d'un tableau. Il est rigide et ne doit être utilisé que lorsqu'il est nécessaire de parcourir les éléments de manière séquentielle sans connaître l'index de l'élément en cours de traitement.

Note: L'objet/la variable est immuable lorsque la boucle for améliorée est utilisée, c'est-à-dire qu'elle garantit que les valeurs du tableau ne peuvent pas être modifiées, elle peut donc être considérée comme une boucle en lecture seule où vous ne pouvez pas mettre à jour les valeurs contrairement aux autres boucles. où les valeurs peuvent être modifiées.

Syntaxe:

for (T element:Collection obj/array) {  // loop body  // statement(s) }>

Prenons un exemple pour démontrer comment la boucle for améliorée peut être utilisée pour simplifier le travail. Supposons qu’il existe un tableau de noms et que nous souhaitons imprimer tous les noms de ce tableau. Voyons la différence entre ces deux exemples par cette simple implémentation :

jquery ce clic

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]); } */ } }>

>

>

Sortir

Ron Harry Hermoine>

Complexité de la méthode ci-dessus :

Complexité temporelle : O(1)
Espace Auxiliaire : O(1)

Recommandation: Utilisez cette forme de déclaration au lieu de la forme générale dans la mesure du possible. (selon la doc JAVA.)

programme Java

Java Infinite pour la boucle

Il s'agit d'une boucle infinie car la condition ne retournera jamais fausse. L'étape d'initialisation consiste à définir la valeur de la variable i sur 1, puisque nous incrémentons la valeur de i, elle sera toujours supérieure à 1 et ne retournera donc jamais faux. Cela conduirait finalement à la condition de boucle infinie.

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);> >}> >}> }>

>

>

Sortir

Infinite Loop 1 Infinite Loop 2 ...>

Il existe une autre méthode pour appeler la boucle Infinie

Si vous en utilisez deux points-virgules ;; dans la boucle for, ce sera un infinitif pour une boucle.

Syntaxe:

for(;;){   //code to be executed  }>

Exemple:

Java




public> class> GFG {> >public> static> void> main(String[] args)> >{> >for> (;;) {> >System.out.println(>'infinitive loop'>);> >}> >}> }>

>

>

Sortir

infinitive loop infinitive loop ....>

FAQ sur Java pour Loop

1. Qu'est-ce qu'une boucle for en Java ?

La boucle For en Java est un type de boucle utilisé pour l’exécution répétitive d’un code de bloc jusqu’à ce que la condition soit remplie.

2. Quelle est la syntaxe de la boucle for ?

La syntaxe de la boucle for est mentionnée ci-dessous :

for (initialization expr; test expr; update exp) {  // body of the loop  // statements we want to execute }>

3. Pourquoi une boucle for est-elle utilisée ?

La boucle For est utilisée lorsque nous devons répéter les mêmes instructions un nombre de fois connu.

Doit se référer :