Comportamiento del desplazamiento a la derecha sin signo aplicado a la variable de byte
Considere el siguiente fragmento de código java
byte b=(byte) 0xf1;
byte c=(byte)(b>>4);
byte d=(byte) (b>>>4);
salida:
c=0xff
d=0xff
Rendimiento esperado:
c=0x0f
¿cómo? como b en binario1111 0001
después del desplazamiento a la derecha sin firmar0000 1111
por lo tanto0x0f
pero porque es0xff
¿cómo?