Операторы этой группы нужны для работы с логическими типами и различными более сложными блочными операторами. Они выражают некоторые операции булевой алгебры, которые необходимы для выражения условий внутри программы.
Операнды этих операторов должны иметь тип bool, результатом также будет bool.
Оператор | Описание | Пример |
&& | Логические И. Если слева и справа true, то и результат true. В остальных случаях false. | true && true = true true && false = false false && true = false false && false = false; |
|| | Логическое ИЛИ.Если хотя бы один из операндов true, то и результат true. | true || true = true true || false = true false || true = true false || false = false; |
! | Логическое НЕ.Инвертирует значение. | !true = false !false = true; |
Их можно также собирать как и арифметические операторы. Например:
(true && (false || true)) == true;
Если уйти от конкретных значений к абстракциям, можно перевести это выражение на человеческий язык:
Я открою это, если у меня есть ключ и это дверь или сундук.