当前位置: 代码迷 >> J2SE >> 左移运算符得到移除位解决思路
  详细解决方案

左移运算符得到移除位解决思路

热度:113   发布时间:2016-04-24 12:11:05.0
左移运算符得到移除位
byte b = 0x01;
int re = b>>1;
但是得到的是0而不是1,我想得到移除的那个位该怎么办呢

------解决方案--------------------
byte b = 0x01; // 00000001
你要的是0x01的1,还是00000001的1?

int hex = b & 0xF;
int bin = b & 0x1;

------解决方案--------------------
Java code
byte b = 0x01;int re = b & 0x01; //这样就得到最低1位了如果要循环不断取最低位for (int i=0; i<8; i++) {    int re = (b>>i) & 0x01;}
------解决方案--------------------
探讨
我就是想循环右移,得到一个byte的所有位。

------解决方案--------------------
探讨
引用:
我就是想循环右移,得到一个byte的所有位。

那就用for循环
Java code
byte b = 0x01;
for (int i=0; i<8; i++) {
int re = (b>>i) &amp; 0x01;
System.out.println(re);
}
  相关解决方案