Описанные в этом разделе логические операции работают только с операндами типа boolean. Все логические операции с двумя операндами объединяют два значения типа boolean, образуя результирующее значение типа boolean. Булевские логические операции перечислены в табл. 4.5.
Таблица 4.5. Булевские логические операции в Java
| Операция | Описание |
| & | Логическое AND (И) |
| | | Логическое OR (ИЛИ) |
| ^ | Логическое XOR (исключающее OR (ИЛИ)) |
| || | Замыкающее OR |
| && | Замыкающее AND |
| ! | Логическое унарное NOT (НЕ) |
| &= | AND с присваиванием |
| |= | OR с присваиванием |
| ^= | XOR с присваиванием |
| = | Равно |
| != | Не равно |
| ?: | Тернарная операция if-then-else |
Логические булевские операции &, | и ^ действуют применительно к значениям типа boolean точно так же, как они действуют по отношению к битам целочисленных значений. Логическая операция ! инвертирует булевское состояние: !true = false и !false = true. Результат выполнения каждой из логических операций приведен в табл. 4.6.
Таблица 4.6. Результаты выполнения булевских логических операций
| A | B | A|B | A&B | A^B | !A |
| false | false | false | false | false | true |
| true | false | true | false | true | false |
| false | true | true | false | true | false |
| true | true | true | true | false | false |