论坛首页 入门讨论版

Java中如何判断二进制数里每一位的值?

浏览 364 次
该帖已经被评为新手帖
作者 正文
最后更新时间:2008-03-27 关键字: java
请大侠们帮忙:
比如我现在有一个二进制的数   10111
现在我需要判断这个数的最低三位是否都为1   上面那个例子应该得到true
比如另外一个数  10001  或者  110    得值应该是false
这么说大家能理解么?  
万望热心肠的朋友们帮忙,感激不尽
应该用Java里的哪个方法呢?
   
最后更新时间:2008-03-27
赞楼上的解法,

与操作用的很巧妙。

我自己来写就做不到这么优雅。
   
0 请登录后投票
最后更新时间:2008-03-27
很牛啊,谢谢了,不过能不能稍微解释一下boolean flg = (a == (a & b));  
这里面的操作么?
我也想到了位运算,但是没想到这位运算还能那么巧妙
我差点拿if else 判断去
呵呵
   
0 请登录后投票
最后更新时间:2008-03-27
似乎明白了
进行与操作时
对应位如果都是1会输出1
所以跟111相与的话,要是也输出111就解决了这个问题了
再次感谢,学到了很多东西
   
0 请登录后投票
最后更新时间:2008-03-27
对了  我要做的操作肯定不会超出int的范围,也不会有负数的情况的
感谢啊
   
0 请登录后投票
论坛首页 入门讨论版

跳转论坛:
JavaEye推荐