I am trying to perform a bitwise or on a byte
value I have in Java.
For example, I am running:
byte b = (byte)0b11111111;
int result = 0 | b;
My expected result for this would be 0b00000000 00000000 00000000 11111111
, or 255
. However, I am receiving -1
, or 0b11111111 11111111 11111111 11111111
.
I'm assuming that Java converts my byte
into an int
via sign extension before performing the operation, and I was just curious if there was a way to get my desired result without using a bit mask (0b11111111
).