Java Tip: labels

Vous qui codez en java, vous avez surement déjà eu affaire à cette situation, une boucle dont vous voulez sortir sous certaines conditions, autres que celles la définissant.

Et comme tout bon programmeur, vous avez fait usage de l’instruction break, logé dans un petit if.

Maintenant, comment faire si vous êtes dans une boucle dans une boucle dans une boucle dans une boucle et que vous voulez quitter la première?

Eh bien java vous permet de placer un label avant votre boucle. Et lorsque vous faite appel à votre instruction break, spécifiez le label, et vous serez à la sortie de la boucle principale.

Simple et efficace, allez, un exemple pour la route:

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

Ce qui vous affichera:

0 0
0 1
0 2
0 3
0 4
1 0
1 1
1 2
1 3
1 4
2 0
2 1
2 2
2 3
Breaking
Done