Os operadores lógicos são fundamentais na programação porque permitem combinar, comparar e inverter condições. Eles são utilizados principalmente em estruturas de decisão, como if e else, para determinar qual caminho o programa deve seguir.

Neste artigo, você vai entender os três principais operadores lógicos: AND (&&), OR (||) e NOT (!), além de aprender como eles funcionam na prática.

O que são operadores lógicos?

Operadores lógicos são símbolos ou palavras reservadas utilizados para trabalhar com valores booleanos.

Um valor booleano pode assumir apenas dois estados:

  • true — verdadeiro
  • false — falso

Por meio dos operadores lógicos, podemos combinar várias condições para produzir um novo resultado lógico.

Por exemplo:

idade >= 18 && temDocumento

Nesse caso, estamos verificando duas condições:

  1. A pessoa tem 18 anos ou mais?
  2. A pessoa possui documento?

O resultado será true somente se as duas condições forem verdadeiras.

Principais operadores lógicos

Os três operadores lógicos mais comuns são:

Operador Nome Função
&& AND / E Todas as condições precisam ser verdadeiras
|| OR / OU Pelo menos uma condição precisa ser verdadeira
! NOT / NÃO Inverte o valor lógico

Vamos entender cada um deles.

Operador AND (&&)

O operador &&, chamado de AND ou E, retorna true somente quando todas as condições envolvidas são verdadeiras.

Como funciona o AND?

Imagine a seguinte regra:

Uma pessoa pode entrar na festa se tiver ingresso E for maior de 18 anos.

Temos duas condições:

temIngresso
maiorDeIdade

Para permitir a entrada, as duas precisam ser verdadeiras.

Tem ingresso É maior de idade Resultado
true true true
true false false
false true false
false false false

Em JavaScript:

temIngresso && maiorDeIdade

Se:

temIngresso = true
maiorDeIdade = true

teremos:

true && true

Resultado:

true

Exemplo com if

Podemos utilizar o operador && para tomar uma decisão:

if (idade >= 18 && temDocumento) {
    console.log("Entrada permitida");
}

Nesse exemplo, a mensagem só será exibida quando as duas condições forem satisfeitas.

Operador OR (||)

O operador ||, chamado de OR ou OU, retorna true quando pelo menos uma das condições é verdadeira.

Como funciona o OR?

Imagine a seguinte situação:

O cliente pode pagar com Pix OU cartão.

Não é necessário utilizar os dois métodos. Basta possuir uma das opções disponíveis.

Pix Cartão Resultado
true true true
true false true
false true true
false false false

Em JavaScript:

pix || cartao

Se:

pix = true
cartao = false

teremos:

true || false

Resultado:

true

Exemplo com if

if (pagamentoPix || pagamentoCartao) {
    console.log("Pagamento disponível");
}

A condição será verdadeira se o pagamento por Pix ou cartão estiver disponível.

Operador NOT (!)

O operador !, chamado de NOT ou NÃO, tem uma função diferente dos anteriores: ele inverte o valor lógico.

Se o valor for true, o resultado será false.

Se o valor for false, o resultado será true.

Valor Resultado com !
true false
false true

Exemplo

!true

Resultado:

false

Outro exemplo:

!false

Resultado:

true

Exemplo prático

Imagine uma variável chamada estaLogado:

estaLogado = true;

Ao utilizar:

!estaLogado

teremos:

false

Isso acontece porque o operador ! inverte o estado original.

Podemos utilizar isso em uma condição:

if (!estaLogado) {
    console.log("Faça login para continuar");
}

Nesse caso, a mensagem será executada quando o usuário não estiver logado.

Combinando operadores lógicos

Os operadores &&, || e ! também podem ser utilizados juntos.

Por exemplo:

idade >= 18 && temDocumento

Podemos criar condições ainda mais complexas:

idade >= 18 && (temDocumento || temPassaporte)

Nesse caso, a pessoa precisa:

  1. Ter 18 anos ou mais;
  2. E possuir documento ou passaporte.

Os parênteses ajudam a deixar a lógica mais clara e controlar a ordem de avaliação.

Operadores lógicos na prática

Considere as seguintes variáveis:

idade = 25;
temDocumento = true;

Podemos verificar:

idade >= 18 && temDocumento

Primeiro, avaliamos:

25 >= 18

Resultado:

true

Depois:

true && true

Resultado final:

true

Portanto, a condição é verdadeira.

Tabela-verdade

Uma maneira muito utilizada para estudar lógica é através da tabela-verdade.

Tabela-verdade do AND

A B A && B
true true true
true false false
false true false
false false false

A regra é simples:

No AND, tudo precisa ser verdadeiro.

Tabela-verdade do OR

A B A || B
true true true
true false true
false true true
false false false

A regra é:

No OR, basta uma condição ser verdadeira.

Tabela-verdade do NOT

A !A
true false
false true

A regra é:

O NOT sempre inverte o valor.

Resumo dos operadores lógicos

Podemos resumir tudo em três regras:

AND (&&)

Todas as condições precisam ser verdadeiras.

true && true // true

OR (||)

Pelo menos uma condição precisa ser verdadeira.

true || false // true

NOT (!)

Inverte o valor lógico.

!true // false

Conclusão

Os operadores lógicos são uma parte essencial da programação. Eles permitem criar regras e decisões mais complexas utilizando valores booleanos.

Os três principais operadores que você precisa dominar são:

  • &&E
  • ||OU
  • !NÃO

Depois de compreender esses operadores, o próximo passo é estudar os operadores relacionais, como >, <, >=, <=, == e !=. Eles são responsáveis por realizar comparações e, quando combinados com operadores lógicos, permitem construir praticamente qualquer condição necessária em um programa.