O operador XOR em Java

Mohammad Irfan 12 outubro 2023
  1. O operador XOR ^ em Java
  2. XOR usando o operador != Em Java
  3. Execute o XOR usando &&, || e ! Operador em Java
O operador XOR em Java

Este tutorial apresenta como usar o operador XOR em Java. Também listamos alguns códigos de exemplo para orientá-lo e ajudá-lo a entender o tópico.

O XOR ou OU exclusivo é um operador lógico usado para manipulação de bits e retorna true apenas se ambos os valores booleanos forem diferentes; caso contrário, retorna false.

Por exemplo, se dois operandos forem true, o XOR retornará false. Se algum deles for false, o resultado será true.

Neste artigo, veremos como Java implementa o operador XOR. Vamos ver os exemplos.

O operador XOR ^ em Java

Neste exemplo, usamos o operador ^ para realizar as operações XOR em dois operandos ou variáveis ​​booleanas. Ele retorna true se ambos os valores forem diferentes; caso contrário, retorna false. Veja o exemplo abaixo.

public class Main {
  public static void main(String[] args) {
    boolean a = true;
    boolean b = false;
    boolean c = true;

    System.out.println(a ^ b);
    System.out.println(b ^ c);
    System.out.println(c ^ a);
  }
}

Produção:

true
true
false

XOR usando o operador != Em Java

Além do operador ^ que usamos no exemplo anterior, também podemos usar o operador != (Diferente de) para executar a operação XOR em Java.

Este programa de exemplo retorna o mesmo resultado que o anterior.

public class Main {
  public static void main(String[] args) {
    boolean a = true;
    boolean b = false;
    boolean c = true;

    System.out.println(a != b);
    System.out.println(b != c);
    System.out.println(c != a);
  }
}

Produção:

true
true
false

Execute o XOR usando &&, || e ! Operador em Java

Este método é outra solução para obter o XOR de dois valores booleanos em Java; no entanto, essa solução é um pouco complexa em comparação com as anteriores. Ainda assim, se isso resolver o problema, podemos considerá-lo.

Veja o exemplo abaixo.

public class Main {
  public static void main(String[] args) {
    boolean a = true;
    boolean b = false;
    boolean c = true;

    System.out.println((a || b) && !(a && b));
    System.out.println((b || c) && !(b && c));
    System.out.println((c || a) && !(c && a));
  }
}

Produção:

true
true
false

Artigo relacionado - Java Operator