Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Оператор переключения C#

Выражение переключения C#

В этой статье мы узнаем об операторе switch в C# и о том, как его использовать с примерами.

Оператор Switch можно использовать для замены оператора if...else if в C#. Преимущество использования оператора switch вместо оператора if...else if заключается в том, что коды будут выглядеть намного чище и читабельнее с помощью оператора switch.

Синтаксис оператора 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
}

Оператор switch оценивает выражение (или переменная ) и сравните его значение со значениями (или выражением) каждого случая (value1 , значение2 , …). Когда он находит совпадающее значение, выполняются операторы внутри этого случая.

Но если ни один из приведенных выше случаев не соответствует выражению, операторы внутри default блок выполняется. Оператор по умолчанию в конце оператора switch аналогичен блоку else в операторе if else.

Однако проблема с оператором switch заключается в том, что когда найдено соответствующее значение, он выполняет все операторы после него до конца блока switch.

Чтобы избежать этого, мы используем break заявление в конце каждого дела. Оператор break останавливает выполнение программой несовпадающих операторов, прерывая выполнение оператора switch.

Чтобы узнать больше об операторе break, посетите страницу оператор break в C#. .

<час>

Пример 1. Оператор 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;
            }
        }
    }
}

Когда мы запустим программу, вывод будет таким:

Enter an alphabet
X
Not a vowel

В этом примере пользователю предлагается ввести алфавит. Алфавит преобразуется в нижний регистр с помощью ToLower() метод, если он указан в верхнем регистре.

Затем оператор switch проверяет, является ли алфавит, введенный пользователем, одним из a, e, i, o or u .

Если один из регистров совпадает, Vowel печатается, в противном случае элемент управления переходит в блок по умолчанию и Not a vowel печатается как вывод.

Поскольку вывод для всех гласных одинаков, мы можем соединить случаи следующим образом:

<час>

Пример 2. Оператор C# switch со сгруппированными вариантами

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;
            }
        }
    }
}

Вывод обеих программ одинаковый. В приведенной выше программе все гласные выводят результат Vowel и прерывает оператор switch.

Хотя оператор switch делает код более чистым, чем оператор if...else if, переключатель ограничен работой с ограниченными типами данных. Оператор Switch в C# работает только с:

<час>

Пример 3. Простой калькулятор с оператором 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;
                     
            }
        }
    }
}

Когда мы запустим программу, вывод будет таким:

Enter first number: -13.11
Enter second number: 2.41
Enter operator (+, -, *, /): *
-13.11 * 2.41 = -31.5951

Приведенная выше программа принимает два операнда и оператор в качестве входных данных от пользователя и выполняет операцию на основе оператора.

Входные данные берутся у пользователя с помощью ReadLine() и Read() метод. Дополнительные сведения см. на странице Базовый ввод и вывод C#.

Программа использует оператор switch case для принятия решения. В качестве альтернативы мы можем использовать лестницу if-else if для выполнения той же операции.


Язык C

  1. Схема с переключателем
  2. Коммутирующий диод
  3. Типы переключения
  4. Связаться с «Bounce»
  5. Мультиметры
  6. Оператор C# break
  7. C# оператор продолжения
  8. Оператор передачи Python
  9. Оператор C++ Switch Case с ПРИМЕРОМ
  10. C — базовый синтаксис