If, else и Switch в C#
За оператором if может следовать необязательный оператор else , который выполняется, когда логическое выражение ложно.
Синтаксис :
if(boolean_expression) { /* оператор(ы) будет выполняться, если логическое выражение истинно */ } else { /* оператор(ы) будет выполняться, если логическое выражение ложно */ }
Если логическое выражение оценивается как true, выполняется блок if, если иначе выполняется блок кода.
Пример :
using System; namespace Calculation { class Program { static void Main(string[] args) { /* определение локальной переменной */ int a = 500;/* проверить булевское состояние */ if (a < 100) { /* если условие истинно, то напечатайте следующее */ Console.WriteLine("a is less than 100"); } else { /* если условие ложно, напечатайте следующее */ Console.WriteLine("a is not less than 100"); } Console.WriteLine("value of a is : {0}", a); Console.ReadLine(); } }}
Когда приведенный выше код компилируется и выполняется, он производит следующий результат:
a is not less than 100; value of a is : 500
If, elseif, else в C#
За оператором if может следовать необязательный else if ... else, который очень полезен для тестирования различных условий, используя инструкцию if if else.
При использовании операторов if, else if else следует иметь в виду несколько моментов.
- Если if может иметь ноль или другое, и он должен появиться после любого другого if.
- Если if может иметь ноль ко многим другим if, и они должны прийти перед else.
- После того, как else, если это произойдет, ни одно из оставшихся else if или else не будет проверено
Синтаксис :
if(boolean_expression 1) { /* Выполняется, когда логическое выражение 1 истинно */ } else if( boolean_expression 2) { /* Выполняется, когда логическое выражение 2 истинно */ } else if( boolean_expression 3) { /* Выполняется, когда логическое выражение 3 истинно */ } else { /* выполняется, когда ни одно из указанных выше условий не выполняется */ }
using System; namespace Calculation { class Program { static void Main(string[] args) { int a = 500; if (a == 500) { Console.WriteLine("Value of a is 100"); } else if (a == 200) { Console.WriteLine("Value of a is 200"); } else if (a == 300) { Console.WriteLine("Value of a is 300"); } else { Console.WriteLine("None of the values is matching"); } Console.WriteLine("Exact value of a is: {0}", a); Console.ReadLine(); } }}
Когда приведенный выше код компилируется и выполняется, он производит следующий результат:
None of the values is matching Exact value of a is: 500
Switch в C#
Оператор switch может заменить несколько операторов if else.
Мы создадим консольное приложение ниже: if else:
namespace SwitchStatement { class Program { static void Main(string[] args) { Console.WriteLine("Please enter your age:"); int UserNumber = int.Parse(Console.ReadLine()); if (UserNumber ==10) { Console.WriteLine("your age is 10"); } else if (UserNumber == 20) { Console.WriteLine("your age is 20"); } else if (UserNumber == 30) { Console.WriteLine("your age is 30"); } else { Console.WriteLine("your age is not 10,20 & 30"); } } } }
Мы можем заменить if else block на оператор Switch, и если вы запустите обе консоли, нажав Ctrl + F5, вы получите тот же результат.
static void Main(string[] args) { Console.WriteLine("Please enter your age:"); int UserNumber = int.Parse(Console.ReadLine()); switch (UserNumber) { case 10: Console.WriteLine("your age is 10"); break; case 20: Console.WriteLine("your age is 20"); break; case 30: Console.WriteLine("your age is 30"); break; default: Console.WriteLine("your age is not 10,20 or 30"); break; } } } }
Инструкция break - это разбить оператор switch.
Мы можем написать оператор дела по-другому:
namespace SwitchStatement { class Program { static void Main(string[] args) { Console.WriteLine("Please enter your age:"); int UserNumber = int.Parse(Console.ReadLine()); switch (UserNumber) { case 10: case 20: case 30: Console.WriteLine("your age is {0}", UserNumber ); break; default: Console.WriteLine("your age is not 10,20 or 30"); break; } } } }
Случай без какого-либо кода автоматически упадет в следующий случай. В приведенном выше примере случай 10 и 20 провалится и выполнит код для случая 30.