Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/02/2010, 18:12
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: ¿Qué significa ">>>"?

Desplaza bits del operando hacia la derecha las posiciones indicadas, olvidándose del signo

Cita:
int i = -8;
System.out.println(Integer.toBinaryString(i) + "=" + i);
System.out.println(Integer.toBinaryString(i>>1) + "=" + (i>>1));
System.out.println(Integer.toBinaryString(i>>>1) + "=" + (i>>>1));
Los resultados que obtendrás son los siguientes

Cita:
11111111111111111111111111111000=-8
11111111111111111111111111111100=-4
1111111111111111111111111111100=2147483644
Si no entiendes la diferencia entre >>1 y >>>1, échale un vistazo a la representación de números binarios (complemento a 2)

[URL="http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Operadores_de_bits"]http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Operadores_de_bits[/URL]