求整数的二进制中,1的个数

2019-07-25  本文已影响0人  JavaM
    /**
     * 求整数的二进制中,1的个数 (负数也可以) 负数计算方式 正数原码取反码再取补码  就是反码加一叫补码
     * -2 :
     * 原码 0000 0000 0000 0000 0000 0000 0000 0010
     * 反码 1111 1111 1111 1111 1111 1111 1111 1101
     * 补码 1111 1111 1111 1111 1111 1111 1111 1110
     *
     * @param n
     */
    public static void getBitOne(int n) {
        int count = 0;
        while (n != 0) {
            count++;
            n = n & (n - 1);
        }
        System.out.println(count);
    }
上一篇下一篇

猜你喜欢

热点阅读