Groovy - instrução de switch aninhada
Também é possível ter um conjunto aninhado de switchafirmações. A forma geral da declaração é mostrada abaixo -
switch(expression) {
case expression #1:
statement #1
...
case expression #2:
statement #2
...
case expression #N:
statement #N
...
default:
statement #Default
...
}
A seguir está um exemplo da instrução switch aninhada -
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!!");
}
}
}
No exemplo acima, estamos primeiro inicializando uma variável para a com um valor de 2. Temos então um switch declaração que avalia o valor da variável a. Com base no valor da variável, ele executará o conjunto de instruções de caso relevante. A saída do código acima seria -
i is 0, j is 1