Когда нам известны конкретные значения с которыми нужно сравнить переменные разумным будет использовать оператор множественного выбора. Ни к чему строить не красивые громоздкие конструкции в таких случаях. Лучше использовать красивый и элегантный swith()!
Модель множественного оператора
Собственно, вся модель не такая уж и мудрёная. Необходимо использовать только четыре слова:
- switch() — может быть только один в блоке;
- case <значение>: — может быть сколько угодно в одном блоке switch();
- default : — может быть только один в одном условном блоке switch();
- break — оператор позволяющий выйти из блока проверки;
По своей сути, оператор множественного выбора switch()..case это модернизированная версия простых условных конструкций, отличие в том, что этот оператор красиво оформлен и нет необходимости строить большие нагромождения в виде условных конструкций с применением if(), else if() и else.
Реальный пример со switch()
Приведём реальный пример сравнения с последующим вывод сообщения на экран.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
using System; //подключённая библиотека using System.Collections.Generic; //подключённая библиотека using System.Linq; //подключённая библиотека using System.Text; //подключённая библиотека using System.Threading.Tasks; //подключённая библиотека namespace ConsoleApplication1 //подключение пространства имён { class Program //класс { static void Main(string[] args) //метод класса { int a = 10; //переменная со значением switch (a) //проверка переменной a на соответствие различным значениям { case 2: Console.WriteLine("Переменная равна 2"); break; //если значение переменной равно 2, то вывести сообщение и завершить проверку case 3: Console.WriteLine("Переменная равна 3"); break; //если значение переменной равно 3, то вывести сообщение и завершить проверку case 4: Console.WriteLine("Переменная равна 4"); break; //если значение переменной равно 4, то вывести сообщение и завершить проверку case 6: Console.WriteLine("Переменная равна 6"); break; //если значение переменной равно 6, то вывести сообщение и завершить проверку case 7: Console.WriteLine("Переменная равна 7"); break; //если значение переменной равно 7, то вывести сообщение и завершить проверку case 8: Console.WriteLine("Переменная равна 8"); break; //если значение переменной равно 8, то вывести сообщение и завершить проверку case 10: Console.WriteLine("Переменная равна 10"); break; //если значение переменной равно 10, то вывести сообщение и завершить проверку case 11: Console.WriteLine("Переменная равна 11"); break; //если значение переменной равно 11, то вывести сообщение и завершить проверку default: Console.WriteLine("Сработал default"); break; //если не было выполнено ни одно из условий выше, то вывести сообщение и завершить проверку } Console.Read(); //ожидание нажатия клавиши Enter } } } |
Здесь появилась новая команда break. Она говорит, что при выполнении этой команды необходимо завершить все дальнейшие действия в данном блоке.
Если break не использовать, то компилятор языка будет ругаться и подсвечивать красным, а также, если не использовать данный оператор, то по логике будет выполняться проверка значения переменной со всеми представленными значениями в case’ах.
Получим на выходе следующее
1 |
Переменная равна 10 |
Таким нехитрым образом мы разобрались с «оператор множественного выбора switch()..case на языке C# (sharp)»!