Логические и булевы операции
Логическое выражение — это выражение, результатом вычисления которого является значение типа Булево
. В логических выражениях могут использоваться следующие операции:
Сравнение на равенство
Применима к значениям любых типов.
Если значение операнд-1 равно значению операнд-2, то результатом операции будет значение Истина
Сравнение на неравенство
Применима к значениям любых типов.
Если значение операнд-1 не равно значению операнд-2, то результатом операции будет значение Истина
.
Сравнение на строгое больше
Применима только к значениям одинаковых типов, которые (типы) имеют базовый тип Сравнимое
.
Если значение операнд-1 строго больше операнд-2, то результатом операции будет значение Истина
.
Сравнение на нестрогое больше
Применима только к значениям одинаковых типов, которые (типы) имеют базовый тип Сравнимое
.
Если значение операнд-1 больше или равно операнд-2, то результатом операции будет значение Истина
.
Сравнение на строгое меньше
Применима только к значениям одинаковых типов, которые (типы) имеют базовый тип Сравнимое
.
Если значение операнд-1 строго меньше операнд-2, то результатом операции будет значение Истина
.
Сравнение на нестрогое меньше
Применима только к значениям одинаковых типов, которые (типы) имеют базовый тип Сравнимое
.
Если значение операнд-1 меньше или равно операнд-2, то результатом операции будет значение Истина
.
Булевы операции
Результаты логических выражений и значения типа Булево
могут участвовать в булевых операциях.
Логическое «И»
выражение-1 и выражение-2
Возвращает значение Истина
, когда результат вычисления каждого выражения равен Истина
.
Логическое «ИЛИ»
выражение-1 или выражение-2
Возвращает значение Истина
, когда результат вычисления хотя бы одного выражения равен Истина
.
Логическое «НЕ»
Возвращает значение Истина
в том случае, если результат вычисления выражение равен Ложь
.
Унарная операция не
представляет собой логическое отрицание, так что не
Истина
равно Ложь
(и наоборот).
Выражение проверки на равенство (или не равенство) значению типа Булево
можно записать полностью:
Однако, допустима и сокращенная запись:
Аналогичным образом можно записать проверки на равенство значению Ложь
:
При использовании сокращенного написания логических выражений, всегда следует помнить о том, насколько понятно будет написанное вами выражение другому разработчику или вам же ч ерез какое-то время. Для гарантированного порядка вычисления частей выражения — расставляйте скобки.
При вычислении логических выражений используется следующий приоритет (в порядке уменьшения приоритета):
- Выражения в круглых скобках.
- Операция
не
.
- Операция
и
.
- Операция
или
.
При вычислении логических выражений применяется сокращенное вычисление: вычисление логического выражения прекращается в том случае, если результат полностью ясен и не может быть изменен в результате вычисления оставшейся части логического выражения.