Um trecho de palestra com um mentor como parte do curso Codegym University. Inscreva-se no curso completo.


"Oi, amigo. Deixe-me falar sobre um novo tipo de dados. O booleano . Variáveis ​​desse tipo podem assumir apenas dois valores: verdadeiro e falso . "

"Como podemos usá-lo?"

"Esse tipo é usado implicitamente em muitos lugares. Assim como qualquer operação de adição produz um número, o resultado de qualquer comparação é um booleano . Aqui estão alguns exemplos:"

Código Explicação
1
boolean m;
Essas duas expressões são equivalentes. O valor padrão de uma variável booleana é false .
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
O resultado da comparação ( verdadeiro ou falso ) será atribuído à variável m. A condição é satisfeita se a expressão for avaliada como true .
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
Não há necessidade de comparar uma variável lógica ( booleana ) com true ou false . O resultado da comparação será um booleano que corresponde à outra variável. Por exemplo, true == true é avaliado como true; true == false é avaliado como false .
6
boolean m = (a > b);
if (m)
    System.out.println(a);

"Mais exemplos:"

Código Explicação
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
Este método verifica se o número a é menor que o número b.

Aqui estão quatro comparações equivalentes. O último é o mais compacto e correto. Sempre tente usar notação compacta .

2
public boolean isALessThanB (int a, int b)
{
   boolean m = (a < b);
    if (m)
        return true;
    else
        return false;
}
3
public boolean isALessThanB (int a, int b)
{
    boolean m = (a < b);
    return m;
}
4
public boolean isALessThanB (int a, int b)
{
    return a < b;
}

"E se eu quiser escrever 0<a<b?"

"Java não tem um operador de comparação que leva três operandos. Então, você precisaria fazer assim: (0<a) AND (a<b) ."

"Devo escrever a palavra E?"

"Espere. Vou explicar isso. Java tem três operadores lógicos: AND , OR e NOT . Você pode usá-los para construir condições de complexidade variável. Você pode usar esses operadores apenas com expressões booleanas . Portanto, você não pode escrever ( a+1) E (3) , mas (a>1)E (a<3) está OK."

"O operador NOT é unário: afeta apenas a expressão à direita. É mais como um sinal de menos antes de um número negativo do que um sinal de multiplicação entre dois números."

"Você pode executar várias operações em variáveis ​​booleanas (lógicas)."

"Como o que?"

"Vamos dar uma olhada:"

operador lógico notação Java Expressão Resultado
E && verdadeiro  &&  verdadeiro verdadeiro
verdadeiro &&  falso falso
falso  &&  verdadeiro falso
falso && falso falso
OU || verdadeiro || verdadeiro verdadeiro
verdadeiro || falso verdadeiro
falso || verdadeiro verdadeiro
falso || falso falso
NÃO ! ! verdadeiro falso
! falso verdadeiro
Combinações e expressões comuns milímetros falso
m || !m verdadeiro
! (a && b) !a || !b
! (a || b) !a && !b

"Você poderia me dar mais exemplos?"

"Claro:"

notação Java notação lógica
(a<3) && (a>0) (a <3) E (a>0)
(a>10) || (um <100) (a>10) OU (a<100)
(a<b) && (!(c<=d)) (a<b) E (NÃO (c<=d))

"Agora, faça algumas tarefas."