Noo*_*tor 5 java bit-manipulation
我在找什么?
让我们考虑int a = 5例如
它的二进制是: 101
所以,当我们这样做
a >> 1
Run Code Online (Sandbox Code Playgroud)
然后最右边的位,即在这种情况下为1,会掉落,我想在一些变量中捕获它.
1st iteration k = 1
2nd iteration k = 0
3rd iteration k = 1
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我有一个硬编码值,但它可以是任意数字的用户输入.
如果我这样做b = a >> 1那么b= a/2在这里无能为力!
我为什么问这个问题?
例如,采用程序将十进制转换为二进制,在这种情况下,如果我可以捕获下降位,那么程序将在最多3-4行完成...
当然还有其他逻辑,我需要知道它是否可能!
在移位之前将最低位存储在变量中,例如,
int a = 5;
int lowestBit = a & 1;
a >>= 1;
Run Code Online (Sandbox Code Playgroud)