Groovy - Istruzione Switch annidata

È anche possibile avere un insieme annidato di file switchdichiarazioni. La forma generale della dichiarazione è mostrata di seguito:

switch(expression) { 
   case expression #1: 
   statement #1 
   ... 
   case expression #2: 
   statement #2
   ... 
   case expression #N: 
   statement #N 
   ... 
   default: 
   statement #Default 
   ... 
}

Di seguito è riportato un esempio dell'istruzione switch nidificata:

class Example { 
   static void main(String[] args) { 
      //Initializing 2 variables i and j 
      int i = 0; 
      int j = 1; 
		
      // First evaluating the value of variable i 
      switch(i) { 
         case 0: 
            // Next evaluating the value of variable j 
            switch(j) { 
               case 0: 
                  println("i is 0, j is 0"); 
                  break; 
               case 1: 
                  println("i is 0, j is 1"); 
                  break; 
               
               // The default condition for the inner switch statement 
               default: 
               println("nested default case!!"); 
            } 
         break; 
			
         // The default condition for the outer switch statement 
         default: 
            println("No matching case found!!"); 
      }
   }
}

Nell'esempio precedente, inizializziamo prima una variabile su a con un valore di 2. Quindi abbiamo a switch istruzione che valuta il valore della variabile a. In base al valore della variabile, eseguirà il set di istruzioni case pertinenti. L'output del codice sopra sarebbe -

i is 0, j is 1