A estrutura switch em Java é uma maneira eficiente de lidar com múltiplas condições que são baseadas no valor de uma expressão. É frequentemente usada como uma alternativa mais limpa e legível ao uso de várias instruções if-else quando se tem várias condições para testar.
Estrutura Básica do switch em java
A estrutura básica do switch é:
switch (expressão) {
case valor1:
// Bloco de código para valor1
break;
case valor2:
// Bloco de código para valor2
break;
// Outros casos...
default:
// Bloco de código para quando nenhum caso é correspondente
break;
}
Posts recentes
Componentes do switch em java
- Expressão: O valor a ser avaliado, que pode ser um tipo primitivo (int, char, byte, short) ou uma String (a partir do Java 7).
- Cases: Cada case representa uma possível correspondência para a expressão. Se a expressão corresponder ao valor do case, o bloco de código correspondente será executado.
- Break: A instrução break é usada para sair do switch e evitar a execução de outros blocos de código subsequentes. Se break não for incluído, o fluxo de controle continuará para o próximo case até encontrar um break ou terminar o switch.
- Default: O bloco default é opcional e será executado se nenhum dos valores especificados nos case corresponder à expressão. É uma boa prática incluir um bloco default para lidar com casos inesperados.
Exemplo de Uso
Aqui está um exemplo básico de um switch que verifica o dia da semana com base em um número:
public class ExemploSwitch {
public static void main(String[] args) {
int dia = 3; // Representa quarta-feira
switch (dia) {
case 1:
System.out.println("Domingo");
break;
case 2:
System.out.println("Segunda-feira");
break;
case 3:
System.out.println("Terça-feira");
break;
case 4:
System.out.println("Quarta-feira");
break;
case 5:
System.out.println("Quinta-feira");
break;
case 6:
System.out.println("Sexta-feira");
break;
case 7:
System.out.println("Sábado");
break;
default:
System.out.println("Dia inválido");
break;
}
}
}
Switch com String
A partir do Java 7, o switch também pode ser usado com o tipo String.
Exemplo:
public class ExemploSwitchString {
public static void main(String[] args) {
String diaDaSemana = "quarta";
switch (diaDaSemana) {
case "segunda":
System.out.println("Segunda-feira");
break;
case "terça":
System.out.println("Terça-feira");
break;
case "quarta":
System.out.println("Quarta-feira");
break;
case "quinta":
System.out.println("Quinta-feira");
break;
case "sexta":
System.out.println("Sexta-feira");
break;
case "sábado":
System.out.println("Sábado");
break;
case "domingo":
System.out.println("Domingo");
break;
default:
System.out.println("Dia inválido");
break;
}
}
}
Switch com múltiplos valores
Em Java 12, você pode usar o switch com múltiplos valores e expressões usando o novo recurso de switch expressions.
Exemplo:
public class ExemploSwitchExpression {
public static void main(String[] args) {
int dia = 3;
String diaDaSemana = switch (dia) {
case 1, 7 -> "Domingo";
case 2 -> "Segunda-feira";
case 3 -> "Terça-feira";
case 4 -> "Quarta-feira";
case 5 -> "Quinta-feira";
case 6 -> "Sexta-feira";
default -> "Dia inválido";
};
System.out.println(diaDaSemana);
}
}
Considerações Finais
- O switch é ideal para múltiplos testes de valores discretos e pode tornar o código mais legível do que uma longa sequência de if-else.
- Lembre-se de incluir a instrução break para evitar a execução do código em casos subsequentes, a menos que você queira executar o código de vários case consecutivos.
- O bloco default é opcional, mas é uma boa prática incluí-lo para lidar com valores inesperados.
Se precisar de mais detalhes ou tiver outras perguntas sobre o switch, estou à disposição!