1. Lógica booleana
Em Java, você não pode escrever a expressão 18 < age <65. Essa é a sintaxe incorreta e o programa não será compilado.
Mas você pode escrever assim:
(18 < age) AND (age < 65)
Claro, em vez da palavra AND, haveria um operador lógico . Falaremos sobre eles com mais detalhes agora.
Existem três operadores lógicos em Java: AND(&&), OR(||) e NOT(!).
A boa notícia é que você pode usar parênteses para construir expressões lógicas de qualquer complexidade.
A má notícia é que os desenvolvedores Java decidiram usar a notação da linguagem C em vez das palavras and, ore not.
Observe a tela:
| operador lógico | Expectativa | Realidade |
|---|---|---|
AND (∧) |
and |
&& |
OR (∨) |
or |
|| |
NOT (¬) |
not |
! |
Aqui estão alguns exemplos de uso de operadores lógicos em Java:
| Expressão | Interpretação | Explicação |
|---|---|---|
|
|
|
|
|
|
|
|
|
2. Exemplos de uso de operadores de comparação e variáveis booleanas
Onde quer que você possa escrever uma expressão lógica, você pode escrever uma variável lógica.
Exemplo:
| Código | Explicação |
|---|---|
|
Se o valor da idade estiver entre 18e 65, a frase "Você pode trabalhar" será exibida. |
|
Criamos uma isYoungvariável e movemos a primeira parte da expressão para ela. Simplesmente substituímos age >= 18por age < 18. |
|
Criamos uma variável isOld e movemos a segunda parte da expressão para ela. Além disso, substituímos age <= 65por age > 65. |
Esses três exemplos são equivalentes. Somente no segundo exemplo movemos parte da expressão da ifinstrução para uma variável booleana separada ( isYoung). No terceiro exemplo, movemos a segunda parte da expressão para uma segunda variável ( isOld).
3. Aritmética lógica
Vamos passar brevemente pelas operações lógicas.
O ANDoperador é &&, também conhecido como conjunção .
| Expressão | Resultado |
|---|---|
|
|
|
|
|
|
|
|
Em outras palavras, o resultado de uma expressão é truesomente se ambos os valores que compõem a expressão forem true. Caso contrário, é sempre false.
O ORoperador é ||, também conhecido como disjunção .
| Expressão | Resultado |
|---|---|
|
|
|
|
|
|
|
|
Em outras palavras, o resultado de uma expressão é sempre truese pelo menos um termo na expressão for true. Se ambos forem false, o resultado será false.
O NOToperador é !, também conhecido como inverso lógico .
| Expressão | Resultado |
|---|---|
|
|
|
|
O operador muda truepara falsee vice-versa.
Expressões úteis:
| Expressão | Resultado |
|---|---|
|
|
|
|
|
|
|
|
GO TO FULL VERSION