Для вычисления логических выражений применяются логические операторы.
В C# существуют следующие логические операторы:
& | Логическое “И” (всегда обрабатываются оба операнда) |
&& | Логическое “И” (вычисляет второй операнд, если необходимо) |
| | Логическое “Или” (всегда обрабатываются оба операнда) |
|| | Логическое “Или” (вычисляет второй операнд, если необходимо) |
! | Логическое “Не” |
^ | Логическое исключающее “Или” |
Оператор &
Оператор &
вычисляет логическое “И” для двух операндов. При этом вычисляет оба операнда независимо от результата вычисления первого операнда.
bool op1 = false; bool op2 = true; Console.WriteLine( op1 & op2 ); // Вывод: False
Для целочисленных переменных оператор &
вычисляет побитовое логическое “И”.
Оператор &&
Оператор &&
вычисляет логическое “И” для двух операндов. При этом второй операнд вычисляется только в том случае, если первый операнд равен True
.
bool op1 = false; bool op2 = true; Console.WriteLine( op1 && op2 ); // Вывод: False
Оператор |
Оператор |
вычисляет логическое “Или” для двух операндов. При этом вычисляет оба операнда независимо от результата вычисления первого операнда.
bool op1 = false; bool op2 = true; Console.WriteLine( op1 | op2 ); // Вывод: True
Для целочисленных переменных оператор |
вычисляет побитовое логическое “Или”.
Оператор ||
Оператор ||
вычисляет логическое “Или” для двух операндов. При этом второй операнд вычисляется только в том случае, если первый операнд равен False
.
bool op1 = false; bool op2 = true; Console.WriteLine( op1 || op2 ); // Вывод: True
Оператор !
Унарный оператор !
производит логическое отрицание для своего операнда. Если операнд равен True
, результатом вычисления операнда !
будет False
и наоборот. Пример:
bool op1 = false; Console.WriteLine( !op1 ); // Вывод: True
Оператор ^
Оператор ^
вычисляет логическое исключающее или для своих операндов.
Console.WriteLine( false ^ false ); // Вывод: False Console.WriteLine( true ^ true ); // Вывод: False Console.WriteLine( false ^ true); // Вывод: True Console.WriteLine( true ^ false ); // Вывод: True
Для целочисленных переменных оператор ^
вычисляет побитовое логическое исключающее “Или”.