Skip to main content
Back to blog

Entendendo o Operador XOR em Java

O operador XOR é um recurso simples e útil dentro da linguagem Java. Ele aparece tanto em operações com inteiros quanto com booleanos. A ideia central é sempre a mesma: comparar dois valores e retornar um resultado baseado na diferença entre eles.

Felipe de Melo Pereira
2 min read
Entendendo o Operador XOR em Java

O que é XOR

XOR significa exclusive OR. É um operador lógico que retorna verdadeiro ou 1 quando os valores comparados são diferentes. Quando são iguais, retorna falso ou 0.

Em Java, o símbolo usado é ^.


XOR com inteiros

Quando aplicado a inteiros, o XOR trabalha bit por bit. Cada bit do primeiro número é comparado com o bit correspondente do segundo número.

Exemplo

int a = 5;
int b = 3;

int resultado = a ^ b;
System.out.println("Resultado: " + resultado); // 6

Forma binária dos números:

5 -> 0101
3 -> 0011

Comparação bit a bit:

0 ^ 0 = 0
1 ^ 0 = 1
0 ^ 1 = 1
1 ^ 1 = 0

Resultado final:

0101
0011
----
0110 -> 6

Esse tipo de operação aparece em manipulação de bits, flags e até em lógicas de criptografia simples.


XOR com booleanos

Com booleanos, o comportamento é direto. O operador retorna true quando os valores são diferentes.

Exemplo

boolean x = true;
boolean y = false;

boolean resultado = x ^ y;
System.out.println("Resultado: " + resultado); // true

Tabela verdade:

true  ^ true  = false
true  ^ false = true
false ^ true  = true
false ^ false = false

Por que o XOR importa

Mesmo sendo simples, o XOR é útil em várias situações:

  • Testar diferenças

  • Criar lógicas booleanas mais limpas

  • Manipular bits para configurações ou permissões

  • Implementar operações comuns em criptografia e checagem de integridade

  • Simplificar expressões onde OR e AND não se encaixam bem