Porque não utilizamos sempre o switchcase ao invés do ifelse? Qual é mais recomendada a utilização no java no fim das contas?
Porque não utilizamos sempre o switchcase ao invés do ifelse? Qual é mais recomendada a utilização no java no fim das contas?
Olá,
todos são estruturas condicionais, mas depende muito do contexto.
Em resumo, o switch vc consegue comparar o mesmo valor com várias opções. Já o if/else, vc pode comparar vários valores.
Por exemplo, em uma situação onde o usuário deve escolher uma opção. O switch parece melhor. Enquanto em uma situação onde precisamos testar se um valor está dentro de um intervalo, o if/else pode ser melhor.
Exemplos abaixo:
System.out.printf(
"Entre com o código do combustível preferido: \n" +
"\t1 - Alcool\n" +
"\t2 - Gasolina\n" +
"\t3 - Diesel\n" +
"\t4 - Fim\n" +
"\t> %d\n", opcao);
switch(opcao){
case 1:
alcool++;
break;
case 2:
gasolina++;
break;
case 3:
diesel++;
break;
case 4:
break;
default:
System.out.println("Código inválido, informe novamente");
}
if (calculaMedia() >= 60) {
return "APROVADO";
}
return String.format("REPROVADO. Faltou %.2f pontos",
60 - calculaMedia());