Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Dominando a Instrução Switch em C#: Sintaxe, Exemplos e Boas Práticas

Instrução switch em C#

Descubra como substituir cadeias complexas de if-else por uma instrução switch limpa e legível em C# — completa com exemplos práticos.

Instruções switch simplificam a tomada de decisão avaliando uma única expressão e executando o bloco case correspondente. Comparado a uma longa escada if-else, a sintaxe switch é mais concisa e fácil de manter.

A estrutura básica é:

switch (variavelOuExpressao) { case valor1: // Código para valor1 break; case valor2: // Código para valor2 break; // … default: // Código quando nenhum case corresponde } 

Quando a expressão corresponde a um case, o bloco correspondente executa até que um break termine o switch. Se nenhum case corresponder, o bloco default executa, espelhando uma cláusula else.

Sem break, a execução "cairia" (fall through) e continuaria nos cases subsequentes — frequentemente levando a bugs. Para um mergulho mais profundo na instrução break em C#, consulte a documentação oficial.


Exemplo 1: Identificando Vogais

using System; namespace Condicional { class SwitchCase { public static void Main(string[] args) { char ch; Console.WriteLine("Digite uma letra"); ch = Convert.ToChar(Console.ReadLine()); switch(Char.ToLower(ch)) { case 'a': Console.WriteLine("Vogal"); break; case 'e': Console.WriteLine("Vogal"); break; case 'i': Console.WriteLine("Vogal"); break; case 'o': Console.WriteLine("Vogal"); break; case 'u': Console.WriteLine("Vogal"); break; default: Console.WriteLine("Não é uma vogal"); break; } } } } 

Executar o programa produz:

Digite uma letra X Não é uma vogal 

Aqui, a entrada do usuário é convertida para minúscula e comparada com os cases de vogais. Se nenhuma vogal corresponder, a mensagem default é exibida.

Como todos os cases de vogais executam a mesma ação, eles podem ser agrupados:


Exemplo 2: Cases Agrupados

using System; namespace Condicional { class SwitchCase { public static void Main(string[] args) { char ch; Console.WriteLine("Digite uma letra"); ch = Convert.ToChar(Console.ReadLine()); switch(Char.ToLower(ch)) { case 'a': case 'e': case 'i': case 'o': case 'u': Console.WriteLine("Vogal"); break; default: Console.WriteLine("Não é uma vogal"); break; } } } } 

A saída permanece idêntica, mas o código é notavelmente mais limpo.

Instruções switch são limitadas a tipos de dados específicos:


Exemplo 3: Calculadora Simples

using System; namespace Condicional { class SwitchCase { public static void Main(string[] args) { char op; double primeiro, segundo, resultado; Console.Write("Digite o primeiro número: "); primeiro = Convert.ToDouble(Console.ReadLine()); Console.Write("Digite o segundo número: "); segundo = Convert.ToDouble(Console.ReadLine()); Console.Write("Digite o operador (+, -, *, /): "); op = (char)Console.Read(); switch(op) { case '+': resultado = primeiro + segundo; Console.WriteLine("{0} + {1} = {2}", primeiro, segundo, resultado); break; case '-': resultado = primeiro - segundo; Console.WriteLine("{0} - {1} = {2}", primeiro, segundo, resultado); break; case '*': resultado = primeiro * segundo; Console.WriteLine("{0} * {1} = {2}", primeiro, segundo, resultado); break; case '/': resultado = primeiro / segundo; Console.WriteLine("{0} / {1} = {2}", primeiro, segundo, resultado); break; default: Console.WriteLine("Operador Inválido"); break; } } } } 

Exemplo de execução:

Digite o primeiro número: -13.11 Digite o segundo número: 2.41 Digite o operador (+, -, *, /): * -13.11 * 2.41 = -31.5951 

Esta calculadora aceita dois operandos e um operador, então realiza a operação solicitada usando um switch. Entradas são lidas via ReadLine() e Read(); para mais sobre entrada/saída, veja Entrada e Saída Básica em C#.

Embora uma cadeia if-else pudesse substituir o switch, este oferece intenção mais clara e execução mais rápida para valores discretos.

Linguagem C

  1. Circuito com Chave: Guia Prático para Circuitos Elétricos Básicos
  2. Experimento com Diodo Comutador: Suprimindo Retorno Indutivo com Lâmpada de Neônio
  3. Entendendo Chaves Elétricas: Tipos, Funções e Aplicações
  4. Eliminando Bounce de Contatos em Chaves Mecânicas
  5. Multímetros: Do Analógico ao Digital — Guia Completo
  6. Instrução Break em C#: Como e Quando Usar
  7. Dominando a Instrução Continue em C#: Como Pular Iterações de Loop Eficazmente
  8. Dominando a Declaração Pass em Python: Guia Prático
  9. Dominando Switch-Case em C++: Sintaxe, Uso e Exemplos Práticos
  10. Dominando a Sintaxe Básica do C: Tokens, Estrutura e Ponto e Vírgula