Uma de switch/case

given

int i = 1;
witch(i){
   case 0, 1: System.out.println("0");
   case 2: System.out.println("2");
   default: System.out.println("3");
}

Wich of the statements are true:

a) 0
b) 023
c) 3
d) runtime exception
e) compile error

e ?
n existe CASE DEFAULT e se eu n me engano em um case n pode ter duas variaveis certo ?

b) 023

na minha opnião vai gerar compile error, pois eu não sabia que o case poderia ter opções …

switch(i){ case 0, 1: //... break; }

Pelo o que eu entendi no curso o correto seria:

switch(i){ case 0: case 1: //... break; }

Ahhhhhhhhh e também nunca vi “case default”!!!

justamente…
poderia ate ter uma razao pelo fall through mai ai ele deveria ter usado

case 1:
case 2: System...........
default:

correto ?

O case “default” ocorre quando nenhum outro case for atendido, ele existe sim.

A resposta será a alternativa

Pois não pode haver mais de um valor por instrunção case.

o que eu quis dizer foi que nao existe uma instrucao “case default:” e sim, existe, um CASE chamado “default” :stuck_out_tongue:
hehe … desculpe

Putz, nem tinha me ligado naquele “case” antes do “default”…que vacilo… :shock:

Po galera, foi mal… tirem esse “case default” ai… era só o default mesmo… Acho q postei errado e naum vi…

mas a intenção era mesmo pegar esse negocio de case1,2 ( testar dois valores no mesmo case )

Fiquei em duvida na hora, mas fui pela lembraça: como nunca vi isso, marquei que geraria compile error… e é mesmo…

Resposta certa: E

E postou errado tb o nome da instrução, la está como [color=“red”]witch[/color], mas deveria ser [color=“red”]switch[/color], certo?

Quando compilei esse exemplo, o meu JVM exibiu apenas a mensagem de Exception, a mensagem certa não seria Compile Error… isso varia de Virtual Machine para Virtual Machine?

A resposta compiler error apenas indica q haverá um erro de compilação, não é a especificação do erro.
Qualquer erro que houver e não compilar, a resposta é Compiler error.

Ah entendi…

Valeu!!!