Je regardais un code qui génère un nombre à la forme binaire avec 0s préfixé.Java Bit Manipulation - Que fait (num >> = 1)?
byte number = 48;
int i = 256; //max number * 2
while((i >>= 1) > 0) {
System.out.print(((number & i) != 0 ? "1" : "0"));
}
et ne comprenaient pas ce que le i >> = 1 fait. Je sais que l'i >> 1 se décale vers la droite d'un bit mais ne comprend pas ce que fait le "=" et AFAIK, il n'est pas possible de faire une recherche de ">> =" pour savoir ce que cela signifie.
Une légère amélioration serait 'while ((i >>> = 1)! = 0)' car la boucle actuelle ne ferait rien si vous lui donniez 'i = 1 << 31' et vous ne pourriez jamais imprimer le bit haut d'un nombre de 32 bits. –