Pessoal, não consegui entender muito bem essa questão:
[code]public class Switch
{
final static short x = 2;
public static int y = 0;
public static void main(String [] args)
{
for(int z = 0; z < 4; z++)
{
switch(z)
{
case x: System.out.print(z + " - 0\n");
default: System.out.print(z + " - def\n");
case x-1: System.out.print(z + " - 1\n"); break;
case x-2: System.out.print(z + "- 2\n");
}
}
}
}[/code]
A saída é: 210def1def1
Quando o z é zero, ele testa o 1º case (case x), onde x é igual a 2, então ele passa para o próximo teste, e o próximo teste é default, ele não deveria entrar ai??
E quando o z é 3, ele testa o 1º case (case x), depois passa pelo default, e aqui ele entra, não entendi pq ele entrar aki quando é 3 e não entra quando é zero.
Esse default no meio me deixou confuso.
Será que alguém pode me explicar.
Valeu…