• 分析:2的整数次方的2进制只有1位是1;所以判断该数是否只有1位1即可,分析完之后就十分简单了,代码如下
@Test
    public void test5() {
   
        int a = 8;
        //输出一个数字的二进制形式用Integer.toBinaryString()方法
        System.out.println(Integer.toBinaryString(a));
        if (((a-1)&a)==0) {
   
            System.out.println("该数是2的整数次方");
        }else
            System.out.println("该数不是2的整数次方");
    }