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

Instrução C# switch

Instrução do switch C#


Neste artigo, aprenderemos sobre a instrução switch em C# e como usá-la com exemplos.

A instrução switch pode ser usada para substituir a instrução if...else if em C#. A vantagem de usar switch over if...else if é que os códigos parecerão muito mais limpos e legíveis com switch.

A sintaxe da instrução switch é:
switch (variable/expression)
{
    case value1:
        // Statements executed if expression(or variable) = value1
        break;
    case value2:
        // Statements executed if expression(or variable) = value1
        break;
    ... ... ... 
    ... ... ... 
    default:
        // Statements executed if no case matches
}

A instrução switch avalia a expressão (ou variável ) e compare seu valor com os valores (ou expressão) de cada caso (valor1 , valor2 , …). Quando encontra o valor correspondente, as instruções dentro desse caso são executadas.

Mas, se nenhum dos casos acima corresponder à expressão, as instruções dentro de default bloco é executado. A instrução padrão no final do switch é semelhante ao bloco else na instrução if else.

No entanto, um problema com a instrução switch é que, quando o valor correspondente é encontrado, ela executa todas as instruções após ele até o final do bloco switch.

Para evitar isso, usamos break declaração ao final de cada caso. A instrução break impede que o programa execute instruções não correspondentes ao encerrar a execução da instrução switch.

Para saber mais sobre a instrução break, visite instrução break C# .

Exemplo 1:instrução switch C#

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char ch;
            Console.WriteLine("Enter an alphabet");
            ch = Convert.ToChar(Console.ReadLine());
 
            switch(Char.ToLower(ch))
            {
                case 'a':
                    Console.WriteLine("Vowel");
                    break;
                case 'e':
                    Console.WriteLine("Vowel");
                    break;
                case 'i':
                    Console.WriteLine("Vowel");
                    break;
                case 'o':
                    Console.WriteLine("Vowel");
                    break;
                case 'u':
                    Console.WriteLine("Vowel");
                    break;
                default:
                    Console.WriteLine("Not a vowel");
                    break;
            }
        }
    }
}

Ao executarmos o programa, a saída será:
Enter an alphabet
X
Not a vowel

Neste exemplo, o usuário é solicitado a inserir um alfabeto. O alfabeto é convertido em minúsculas usando ToLower() método se estiver em maiúsculas.



Em seguida, a instrução switch verifica se o alfabeto digitado pelo usuário é algum de a, e, i, o or u .

Se uma das maiúsculas e minúsculas corresponder, Vowel é impresso caso contrário o controle vai para o bloco padrão e Not a vowel é impresso como saída.

Como a saída para todas as vogais é a mesma, podemos juntar os casos como:

Exemplo 2:instrução switch C# com casos agrupados

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char ch;
            Console.WriteLine("Enter an alphabet");
            ch = Convert.ToChar(Console.ReadLine());
 
            switch(Char.ToLower(ch))
            {
                case 'a':
                case 'e':
                case 'i':
                case 'o':
                case 'u':
                    Console.WriteLine("Vowel");
                    break;
                default:
                    Console.WriteLine("Not a vowel");
                    break;
            }
        }
    }
}

A saída de ambos os programas é a mesma. No programa acima, todas as vogais imprimem a saída Vowel e quebra da instrução switch.

Embora a instrução switch faça o código parecer mais limpo do que a instrução if...else if, o switch está restrito a trabalhar com tipos de dados limitados. A instrução Switch em C# só funciona com:

Exemplo 3:Programa de calculadora simples usando a instrução switch C#

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char op;
            double first, second, result;
             
            Console.Write("Enter first number: ");
            first = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter second number: ");
            second = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter operator (+, -, *, /): ");
            op = (char)Console.Read();
 
            switch(op)
            {
                case '+':
                    result = first + second;
                    Console.WriteLine("{0} + {1} = {2}", first, second, result);
                    break;
                 
                case '-':
                    result = first - second;
                    Console.WriteLine("{0} - {1} = {2}", first, second, result);
                    break;
                 
                case '*':
                    result = first * second;
                    Console.WriteLine("{0} * {1} = {2}", first, second, result);
                    break;
                 
                case '/':
                    result = first / second;
                    Console.WriteLine("{0} / {1} = {2}", first, second, result);
                    break;
 
                default:
                    Console.WriteLine("Invalid Operator");
                    break;
                     
            }
        }
    }
}

Ao executarmos o programa, a saída será:
Enter first number: -13.11
Enter second number: 2.41
Enter operator (+, -, *, /): *
-13.11 * 2.41 = -31.5951

O programa acima recebe dois operandos e um operador como entrada do usuário e executa a operação com base no operador.

As entradas são obtidas do usuário usando o ReadLine() e Read() método. Para saber mais, visite C# Basic Input and Output.

O programa usa a instrução switch case para tomada de decisão. Alternativamente, podemos usar if-else if escada para realizar a mesma operação.

Linguagem C

  1. Circuito com interruptor
  2. Diodo de comutação
  3. Tipos de troca
  4. Contact “Bounce”
  5. Multímetros
  6. Instrução C# break
  7. C# continue declaração
  8. Instrução de passagem do Python
  9. Instrução C++ Switch Case com EXEMPLO
  10. C - Sintaxe Básica