Java程序整数的位运算

要计算整数中的set位,Java代码如下-

示例

import java.io.*; public class Demo{    static int set_bits_count(int num){       int count = 0;       while (num > 0){          num &= (num - 1);          count++;       }       return count;    }    public static void main(String args[]){       int num =11;       System.out.println("11中的set位数为 ");       System.out.println(set_bits_count(num));    } }

输出结果

11中的set位数为 3

以上是Brian Kernighan算法的一个实现。一个名为Demo的类包含一个名为set_bits_count的静态函数。此函数检查数字是否为0,如果不是,则将一个名为count的变量赋值为0。它对数字和减1的数字执行逻辑与(&)操作。

接下来,计数值在此操作之后递减。最后,返回计数值。在main函数中,定义了需要查找集位的值。通过将数字作为参数传递来调用该函数。相关消息显示在控制台上。