第一种方法
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int count = 0; //count表示1的个数,初始值为0
while(num!=0){
//如果num模2为1,则加1
if(num%2 == 1) {
count++;
}
num/=2; //num整除2后进行下一次条件判断
}
System.out.println("该数二进制1的个数有"+count+"个");
}
第二种方法(优化)
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int count = 0;
while(num!=0){
count++;
num = num&(num-1);
}
System.out.println("该数二进制1的个数有"+count+"个");
}
【Java】求一个整数,在内存当中存储时,二进制1的个数
最新推荐文章于 2022-05-06 16:12:18 发布