Galera to resolvendo umas questoes e fiz que tinha um switch, daí abri o eclipse e vim fazer uns testes com switch, e me deu uma duvida.
[code]switch(2){
case 1:
System.out.println("a");
break;
case 2:
System.out.println("b");
break;
case 3:
System.out.println("c");
break;
}[/code]
Ta exibindo “a” “b”, como tem break em todos cases nao deveria imprimir somente b nao? Como deveria ser?
Agora fiquei em dúvida tb. Faz sentido não colocar uma variável no testo do Switch? Não deveria ser assim:
int valor = 2;
switch (valor) {
case 1:
System.out.println("O valor foi 01");
break;
case 2:
System.out.println("O valor foi 02");
break;
case 3:
System.out.println("O valor foi 03");
break;
default:
System.out.println("O valor padrão é escolhido aqui");
break;
}
Agora, mesmo usando assim do jeito que vc fez retornou só o valor correto. Parou no break.
switch (2) {
case 1:
System.out.println("O valor foi 01");
break;
case 2:
System.out.println("O valor foi 02");
break;
case 3:
System.out.println("O valor foi 03");
break;
default:
System.out.println("O valor padrão é escolhido aqui");
break;
}
Saida:
O valor foi 02
Rapaz…da uma olhadinha direitinho ai…porque… é para imprimir apenas o ‘b’ …porque ele compara… e o que vc esta passando é o numero 2 então.
vai imprimir a letra ‘b’
pois é na eu tb achava que deveria ser so o “b”, e quanto a variavel nao importa passar dois ou á variavel contendo o 2.
fechei e abri o eclipse agora imprimiu so o “b”, sinistro kkk
o switch ele recebe entre o parentes é um numero inteiro então…por isso da certo.
Pois é cara fechei e abri o negocio imprimiu so “b”, achei q tinha algo de errado.