Usare le label negli statement in Java
Non tutti sanno che negli statement in Java è possibile usare le label!
E che sarebbero queste label?
Ora lo spieghiamo con un esempio, che è sicuramente più facile.
Prendiamo questo codice:
public class Main {
public static void main(String[] args) {
int counter = 0;
for (int i = 0; i <= 10; i++) {
for (int j = 0; j <= 10; j++) {
if (i == 7) {
break;
}
}
counter++;
}
System.out.println(counter);
}
}
In pratica, vogliamo uscire dai due cicli ad una determinata condizione, che si vierifica in quello esterno.
In verità, l'output finale sarà 11, e il for interno terminarà comunque tutta l'iterazione.
Usando le label, possiamo invece forzare il programma ad uscire completamente da entrambi i cicli:
public class Main {
public static void main(String[] args) {
int counter = 0;
start:
{
for (int i = 0; i <= 10; i++) {
for (int j = 0; j <= 10; j++) {
if (i == 5) {
break start;
}
}
counter++;
}
}
System.out.println(counter);
}
}
Qui l'output sarà 5, in quanto il secondo ciclo non terminerà tutta l'iterazione.
E' possibile usare le label anche con continue, e non solo con break (anche se con una logica un pò diversa ovviamente).
Enjoy!
java continue break statement label
Commentami!