Java XOR é um dos operadores bit a bit disponíveis em Java. O XOR (também conhecido como OR exclusivo) recebe dois operandos booleanos e retorna verdadeiro se eles forem diferentes. O melhor caso de uso do operador XOR é quando ambas as condições booleanas fornecidas não podem ser verdadeiras simultaneamente.
Vamos entender o que são os operadores bit a bit em Java?
Operadores bit a bit em Java
Um operador é um símbolo definido para executar uma operação específica. Por exemplo, o operador '+' é usado para adicionar dois valores. Assim como os operadores tradicionais, Java fornece suporte para operadores bit a bit. Esses operadores são usados para realizar operações em bits individuais de um número. É por isso que estes operadores são chamados de operadores bit a bit. É avaliado da esquerda para a direita.
convenção de nomenclatura de java
Os operadores bit a bit podem ser usados com qualquer um dos tipos de dados integrais, como int, char, short, etc. Normalmente, os operadores bit a bit são usados durante a execução de operações de manipulação ou consulta na árvore binária indexada.
Existem sete tipos de operador bit a bit em Java que são usados para realizar operações em nível de bit:
Operador | Descrição |
---|---|
| | OU bit a bit |
& | E bit a bit |
^ | XOR bit a bit |
~ | Complemento bit a bit |
<< | Desvio à esquerda |
>> | Mudança para a direita assinada |
>>> | Deslocamento para a direita não assinado |
Nesta seção, discutiremos o operador Bitwise XOR em Java. Ver tudo Operador bit a bit em Java .
data convertida em string
Operador Java XOR (OU exclusivo)
O operador XOR é indicado por um símbolo de cenoura (^). Leva dois valores e retorna verdadeiro se forem diferentes; caso contrário, retorna falso. Em binário, o verdadeiro é representado por 1 e o falso é representado por 0.
Abaixo está a tabela verdade do operador XOR:
x | e | x^y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 0 |
Na tabela acima, podemos ver que ele retorna verdadeiro se e somente se os valores de ambos os operandos forem diferentes. Caso contrário, retorna falso.
Vamos entender com um exemplo:
Exemplo de operador XOR
Considere o exemplo abaixo:
TestXor.java:
nginx
public class TestXor { public static void main(String[] args) { int x = 5, y = 7; //declaring values // bitwise XOR // 0101 ^ 0111 = 0101 = 2 // Performing an operation with xor and traditional operator System.out.println('x ^ y = ' + (x ^ y)); } }
Saída:
x ^ y = 2
No exemplo acima, definimos dois valores e realizamos a operação XOR sobre eles. Além disso, adicionamos duas operações XOR usando um operador tradicional +. Assim, podemos escrever os operadores tradicionais para operar dois XORs.