E se você não deixou de estudar, viu que | é o operador “OU Bit-a-bit”, ou seja: pegue X e Y e os transforme em binário. Para cada bit, se pelo menos um dos bits for 1, o resultado é 1. Se ambos os bits forem 0, o resultado é 0.
Isso é muito usado, por exemplo, para manipulação de imagens.
J
Jdanos
A operação lógica OR significa operação lógica OU e é representada por ||. O operador OR funciona em qualquer um dos tipos inteiros de Java e com tipos boolean numa expressão condicional do tipo if(bool1 || bool2). Este operador retorna 1 para cada posição em que um dos valores “ORados” possuir um 1 na mesma posição de bit. Se os dois valores tiverem um 0 (zero) na posição de bit, o operador retornará o valor 0. Veja os exemplos na tabela abaixo:
Operação: boolean_1 || boolean_2
Valor Lógico Valor Binário
boolean_1 = TRUE 1
boolean_2 = FALSE 0
Resultado OR ( || ) 1
OPERADOR AND BIT-A-BIT
A operação lógica AND significa operação lógica E e é representada por &. O operador AND funciona em qualquer um dos tipos inteiros de Java e com tipos boolean numa expressão condicional do tipo if(bool1 & bool2). Este operador retorna 1 para cada posição em que os valores “ANDados” possuírem um 1 simultaneamente na mesma posição de bit. Se um dos valores tiver um 0 (zero) na posição de bit, o operador retornará o valor 0. Veja os exemplos na tabela abaixo:
Operação: boolean_1 & boolean_2
Valor Lógico Valor Binário
boolean_1 = TRUE 1
boolean_2 = FALSE 0
Resultado AND (&) 0
E
eclipso
Na verdade “||”, assim como “&&” só é aplicável a operandos booleanos…
Nas operações lógicas bit a bit é “|” para OR, “&” para AND, “^” para XOR e “~” para NOT. Sendo que os três primeiros são binários, ou seja, possueam a forma <OPERANDO 1><OPERANDO 2> (exemplo: 4 & 5) e o último é unário (~5)…
Além desses, temos também os operadores de deslocamento de bits…
F
fabioEM
thingol:
X |= Y é a mesma coisa que X = X | Y.
E se você não deixou de estudar, viu que | é o operador “OU Bit-a-bit”, ou seja: pegue X e Y e os transforme em binário. Para cada bit, se pelo menos um dos bits for 1, o resultado é 1. Se ambos os bits forem 0, o resultado é 0.
Isso é muito usado, por exemplo, para manipulação de imagens.
Beleza cara já imaginavo mas tinha estranhado este =!!
valeu!