Sortir d'une boucle for en Java [fermé]

Dans mon code j'ai une boucle for qui parcourt une méthode de code jusqu'à ce qu'il répond à la condition.

est - ce qu'il y a un moyen d'en sortir pour loop?

Donc, si on regarde le code ci-dessous, si nous voulons sortir de cette boucle quand nous arrivons à "15"?

public class Test {

   public static void main(String args[]) {

      for(int x = 10; x < 20; x = x+1) {
         System.out.print("value of x : " + x );
         System.out.print("n");
      }
   }
}

Outputs:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

j'ai essayé ce qui suit en vain:

public class Test {

   public static void main(String args[]) {
      boolean breakLoop = false;
      while (!breakLoop) {
          for(int x = 10; x < 20; x = x+1) {
             System.out.print("value of x : " + x );
             System.out.print("n");
          if (x = 15) {
              breakLoop = true;
          }
          }
      }
   }
}

et j'ai essayé une boucle:

public class Test {

   public static void main(String args[]) {
      breakLoop:
          for(int x = 10; x < 20; x = x+1) {
             System.out.print("value of x : " + x );
             System.out.print("n");
             if (x = 15) {
                 break breakLoop;
             }
      }
   }
}

la seule façon que je peux atteindre ce que je veux est en sortant d'une boucle for, Je ne peux pas la subsituer pendant un certain temps, faire, si ETC déclaration.

Edit:

ceci n'a été fourni qu'à titre d'exemple, ce n'est pas le code dans lequel j'essaie de le faire implémenter. J'ai maintenant résolu le problème en plaçant plusieurs instructions IF après l'endroit où chaque boucle commence. Avant de onlu sauter d'une partie de la boucle en raison de l'absence de pauses;

49
demandé sur silverzx 2013-03-07 19:33:41

5 réponses

break; est ce dont vous avez besoin pour sortir de n'importe quelle déclaration en boucle comme for , while ou do-while .

dans votre cas, ce sera comme ceci: -

for(int x = 10; x < 20; x++) {
         // The below condition can be present before or after your sysouts, depending on your needs.
         if(x == 15){
             break; // A unlabeled break is enough. You don't need a labeled break here.
         }
         System.out.print("value of x : " + x );
         System.out.print("\n");
}
131
répondu SudoRahul 2013-03-07 15:42:33

vous pouvez utiliser:

for (int x = 0; x < 10; x++) {
  if (x == 5) { // If x is 5, then break it.
    break;
  }
}
17
répondu BloodShura 2013-03-07 15:35:08

si pour une raison quelconque vous ne voulez pas utiliser l'instruction break (si vous pensez que cela va perturber votre flux de lecture la prochaine fois que vous lirez votre programme, par exemple), vous pouvez essayer ce qui suit :

boolean test = true;
for (int i = 0; i < 1220 && test; i++) {
    System.out.println(i);
    if (i == 20) {
        test = false;
    }
 }

le second arg d'une boucle for Est un test booléen. Si le résultat du test est vrai, la boucle s'arrête. Vous pouvez utiliser plus qu'un simple test de maths si vous voulez. Sinon, une simple pause fera aussi l'affaire, comme d'autres l'ont dit:

for (int i = 0; i < 1220 ; i++) {
    System.out.println(i);
    if (i == 20) {
        break;
    }
 }
15
répondu user2145100 2013-03-07 16:11:23

Que diriez-vous de

for(int k=0;k<10;k=k+2) 
        {
            if(k==2)
            {
            break;
            }
            System.out.println(k);
        }

l'autre voie est appelée boucle

myloop:  for (int i=0; i < 5; i++) {
              for (int j=0; j < 5; j++) {
                if (i * j > 6) {
                  System.out.println("Breaking");
                  break myloop;
                }
                System.out.println(i + " " + j);
              }
            }

pour une meilleure explication vous pouvez cocher ici

4
répondu Hussain Akhtar Wahid 'Ghouri' 2017-05-23 12:03:02
public class Test {

public static void main(String args[]) {

  for(int x = 10; x < 20; x = x+1) {
     if(x==15)
         break;
     System.out.print("value of x : " + x );
     System.out.print("\n");
  }
}
}
3
répondu Achintya Jha 2013-03-07 15:36:29