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…
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