Expressões switch
Switch como expressão que retorna um valor — sem break, sem fall-through.
Comparação de Código
✕ Java 8
String msg;
switch (day) {
case MONDAY:
msg = "Start";
break;
case FRIDAY:
msg = "End";
break;
default:
msg = "Mid";
}
✓ Java 14+
String msg = switch (day) {
case MONDAY -> "Start";
case FRIDAY -> "End";
default -> "Mid";
};
Viu um problema com este código? Nos avise.
Por que a forma moderna ganha
Retorna um valor
Atribua o resultado do switch diretamente — sem variável temporária necessária.
Sem fall-through
A sintaxe de seta elimina bugs acidentais de fall-through por break esquecido.
Verificação de exaustividade
O compilador garante que todos os casos estão cobertos.
Abordagem Antiga
Instrução switch
Abordagem Moderna
Expressão switch
Desde o JDK
14
Dificuldade
Iniciante
Suporte JDK
Expressões switch
Disponível
Amplamente disponível desde o JDK 14 (março de 2020)
Como funciona
Expressões switch retornam um valor diretamente, usam sintaxe de seta para evitar bugs de fall-through, e o compilador verifica a exaustividade. Isso substitui a forma de instrução propensa a erros.
Documentação Relacionada