web-dev-qa-db-fra.com

La déclaration de rupture est-elle rompue des boucles ou seulement de si les déclarations de si?

Dans le code suivant, la déclaration break sort de la déclaration if uniquement ou hors de la boucle for aussi?

J'en ai besoin de sortir de la boucle aussi.

for (int i = 0; i < 5; i++) {
    if (i == temp)
        // do something
    else {
        temp = i;
        break;
    }
}
12
darksky

Cela va sortir de la boucle. En fait, break n'a aucun sens lorsque vous parlez de loops, puisqu'ils cassent de la loop entièrement, tandis que continue ne va que sur le prochain iteration ] _.

20
Oscar Gomez

Un break _ ($ var] _ ne sort que de l'switch, for, while ou do-while construire. Il ne prend pas en compte if déclarations.

Voir http://download.oracle.com/javase/tutorial/java/nutsandbolts/branch.html Pour plus de détails.

15

Cela sort aussi de la boucle.

Vous pouvez également utiliser des pauses étiquetées pouvant sortir des boucles extérieures (et des blocs de code arbitraires).

looplbl: for(int i=;i<;i++){

    if (i == temp)
        // do something
    else {
        temp = i;
        break looplbl;
    }
}
7
ratchet freak

break est de sortir de toute boucle.

2
Arun

Il va toujours sortir de la boucle.

2
Kevin Jalbert

La pause ne fait jamais référence à des déclarations si/autre. Il ne fait que référence à des boucles (si/pendant le moment) et des déclarations de commutation.

2
ben

En règle générale break déclaration éclate des boucles (for, while, et do...while) et switch déclarations.

In Java Il y a 2 variantes de break.

1. Labeled break

Il se déchaîne de la boucle extérieure où vous mettez la robe.

breakThis: for(...){
   for(...){
      ... 
      break breakThis;  // breaks the outer for loop
   }
}

2. Unlabeled break

C'est la déclaration que vous avez utilisée dans votre question.

Il enfreint la boucle dans laquelle il est écrit. Généralement la boucle intérieure.

1
Digvijaysinh Gohil

Cela vous briserait de la boucle. Généralement pause L'instruction est utilisée pour optimiser l'heure de fonctionnement de votre programme. Signifie que lorsque la condition donnée est remplie, utilisez pause Énoncé de manière à ce que cela vous emmène hors de la boucle et ignore les itérations restantes.

0
Akshay