O que exatamente o "^" representa no Java

tipo pq o resultado de:

System.out.println(14^23);

é 25 ?? Sei que o ^ pode ser “Bitwise XOR” ou “Booleano (lógico) XOR” mas oq o 25 tem haver com a historia? :roll:

É mais fácil se você converte para binário primeiro, efetua a operação, e volta para decimal. As operações de bits não fazem muito "sentido" em decimal. No seu exemplo:

14 = 01110
23 = 10111
^  = 11001 -> 25

Use a calculadora do Windows (em modo científico, basta clicar no menu Exibir a opção Científica) para fazer as tais conversões.

Sim mais nesse caso q operação ele fez exatamente? Somou, Diminuiu ou elevou ??

realizou a operação bit a bit:

0 com 1 dá 1
1 com 1 dá 0
1 com 0 dá 1
0 com 0 dá 0

Otimo! Thank you very much!! :wink:

Olá para quem não entendeu ainda o pq deu 25
é o seguinte o resultado final como apresentado acima ficou
11001 o calculo realizado para dar 25 é sempre da direita para esquerda
ficaria assim :
1 - 2 elevado a 4 = 16 x o nº binario no caso 1 que resulta em 16
1 - 2 elevado a 3 = 8 x o nº binario no caso 1 que resulta em 8
0 - 2 elevado a 2 = 4 x o nº binario no caso 0 que resulta em 0
0 - 2 elevado a 1 = 2 x o nº binario no caso 0 que resulta em 0
1 - 2 elevado a 0 = 1 x o nº binario no caso 1 que resulta em 1

ai é so somar o resultado 16 + 8 + 1 = 25

Abraço