Posted on 2012-06-16 22:26
steven.cui 阅读(633)
评论(0) 编辑 收藏 所属分类:
java
判断一个数是否是2的n次幂
类似这样的数字
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 …
if ((n & -n) == n)
…
1 public class Is2Power {
2 public static void main(String[] args) {
3 for (int i = 0;i <= 1024; i++) {
4 if ((i & -i) == i)
5 System.out.println(Integer.toBinaryString(i) + ", " + Integer.toBinaryString(-i) + " " + i);
6 }
7 }
8 }