Essa é difícil!

Qual das seguintes expressões resultam em um valor positivo em x?

A) int x = -1; x = x >>> 5;

B) int x = -1; x = x >>> 32;

C) byte x = -1; x = x >>> 5;

D) int x = -1; x = x >> 5;

Justifique se puder…

letra a) será um valor positivo, primeiro pq esta usando o operador >>> q preenxe sempre com zeros a esquerda, e segundo pq não esta ultrapassando o tamanho de um int.

letra b) será negativo, pois esta fazendo >>> 32, ultrapassando o tamanho de um int, e fazendo o complemento de 2

letra c) nem compila, a operação com >>> retorna um int, e um int nao cabe em um byte sem cast

letra d) retorna negativo, pois esta usando o operador >> em um numero negativo, logo, não irá preenxer de zeros a esquerda, permanecerá o numero do sinal, no caso, preenxerá de 1