Tentei fazer alguns códigos para entender como o switch funciona, qunado fiz o seguinte:
Switch(val1>val2);{casetrue:System.out.println(val1+" é maior que "+val2;break;casefalse:System.out.println(val2+" é maior que "+val1;break;default:System.out.println("Os valores são iguais");}
Ele tah acusando erro logo no primeiro case. Só quero saber se isso é por que é proibido fazer assim ou eu cometi algum erro?
As variaveis val1 e val2 sao inteiros e estão declaradas logo acima no começo do codigo.
Não deve haver o ponto e virgula depois da cláusula do switch.
A cláusula do switch somente pode ser variáveis inteiras, ou seja, do tipo int ou menores que ele ( char, short, byte) e enums. long não pode. String não pode. Nem preciso dizer que boolean tbm não pode (val1 <val2 resulta em boolean).
Rudy
rod.attack:
Primeiro, seu código tem erros de sintaxe:
switch se escreve assim, tudo minúsculo.
Não deve haver o ponto e virgula depois da cláusula do switch.
A cláusula do switch somente pode ser variáveis inteiras, ou seja, do tipo int ou menores que ele ( char, short, byte) e enums. long não pode. String não pode. Nem preciso dizer que boolean tbm não pode (val1 <val2 resulta em boolean).
Entendi! Então o erro é mesmo por causa condição booleana que coloquei?
victorwss
Rudy:
rod.attack:
Primeiro, seu código tem erros de sintaxe:
switch se escreve assim, tudo minúsculo.
Não deve haver o ponto e virgula depois da cláusula do switch.
A cláusula do switch somente pode ser variáveis inteiras, ou seja, do tipo int ou menores que ele ( char, short, byte) e enums. long não pode. String não pode. Nem preciso dizer que boolean tbm não pode (val1 <val2 resulta em boolean).
Entendi! Então o erro é mesmo por causa condição booleana que coloquei?
Um dos erros é por causa da condição booleana. Há mais outros dois erros além disso (ponto-e-vírgula a mais e switch com letra maiúscula).
EDIT: Há mais erros também em outras linhas. “case true” e “case false” não existem, e mesmo se existissem, o default não funcionaria. Além disso, há dois parênteses que abrem e não fecham.