Continuando os artigos sobre estruturas de decisão, veremos hoje a estrutura switch case.
Switch case é uma outra estrutura de decisão disponível no C# que avalia uma condição como o if else, com a diferença de deixar o programa mais simples e fácil de entender.
Switch case
É usado quando precisamos de múltiplas condições if else em um programa. Ele também inclui um valor padrão, que é utilizado quando o resultado não está previsto em nenhuma das condições.
Sintaxe
switch(expressão)
{
case <valor1>:
// bloco de código
break;
case <valor2>:
// bloco de código
break;
case <valorN>:
// bloco de código
break;
default
// bloco de código
break;
}
Conforme a sintaxe acima, a instrução switch contém uma expressão entre parênteses. Ele também inclui vários cases, onde cada case representa um determinado valor literal. Os cases dentro do switch são separados pela palavra-chave break, que interrompe a execução de um case particular.
Além disso, o switch pode incluir uma declaração default (padrão) a ser executado se nenhum valor case satisfaça a expressão.
Nota: O rótulo case no switch deve ser exclusivo. Pode ser bool, char, string, inteiro, enum ou tipo nullable.
Considere o exemplo abaixo.
Exemplo
using System;
class ExemploSwitchCase
{
static void main()
{
int x = 10;
switch (x)
{
case 5:
Console.WriteLine("Valor de x é 5.");
break;
case 10:
Console.WriteLine("Valor de x é 10.");
break;
case 15:
Console.WriteLine("Valor de x é 15.");
break;
default:
Console.WriteLine("Valor desconhecido.");
break;
}
}
}
Goto no switch case
O switch case pode utilizar goto para “pular” até um case diferente.
Exemplo
using System;
class ExemploSwitchCaseGoTo
{
static void main()
{
string tipoDeclaracao = "switch";
switch (tipoDeclaracao)
{
case "EstruturaDecisao":
Console.Write(" é uma estrutura de decisão.");
break;
case "if.else":
Console.Write("if-else");
break;
case "ternary":
Console.Write("Operador ternário");
break;
case "switch":
Console.Write("switch");
goto case "EstruturaDecisao";
}
}
}
Switch case aninhados
Declarações switch aninhadas são permitidas em C#.
Apenas escreva uma declaração switch dentro de outro switch case.
Exemplo
using System;
class ExemploSwitchCaseAninhado
{
static void main()
{
int j = 5;
switch (j)
{
case 5:
Console.WriteLine(5);
switch (j - 1)
{
case 4:
Console.WriteLine(4);
switch (j - 2)
{
case 3:
Console.WriteLine(3);
break;
}
break;
}
break;
case 10:
Console.WriteLine(10);
break;
case 15:
Console.WriteLine(15);
break;
default:
Console.WriteLine(100);
break;
}
}
}
Dicas
A instrução break deve ser utilizada em cada case e declarações default.
Se você estiver testando valores do tipo char, escreva-os dentro de aspas simples: case ‘1’, case ‘b’, case ‘C’, case ‘k’ e assim por diante.
Se você estiver testando valores do tipo string, escreva-os dentro de aspas duplas: case “Adicionar”, case “Subtrair”, case “Multiplicar”, caso “Dividir” e assim por diante.
Palavras finais
Neste artigo que você aprendeu a estrutura switch case e sua diferença de estruturas if else.
Você também aprendeu a usar o switch case em programas C#.
Vamos relembrar alguns pontos importantes:
- A instrução switch testa uma variável contra um conjunto de constantes.
- A instrução switch contém múltiplos rótulos case.
- A palavra-chave break interrompe a execução do case dentro do switch.
- O default será executado quando nenhum case satisfaz a expressão.
- Declarações switch aninhadas são permitidas. Mas tome cuidado com a legibilidade do código.
- Podemos utilizar também a palavra goto para direcionar o fluxo de execução dentro da estrutura switch case.
Meu e-book Como Aprender a Programar do Absoluto Zero está GRATUITO por tempo limitado!
Olha o link: 👉🏼 http://celsokitamura.com.br/como-aprender-a-programar
Bora aprender a programar!



Deixe um comentário