package com.zttexercise;
public class test {
public static void main(String[] args) {
int n=125;
int ret=bitCount(125);
System.out.printf("整数%d存在%d个1\n",n,ret);
System.out.printf("整数%d存在%d个1\n",n,Integer.bitCount(n));
// TODO Auto-generated method stub
}
//统计指定整数的二进制中1的个数
//参数num:指定整数
//返回值:二进制中1的个数
public static int bitCount(int num) {
//将指定整数转换成二进制
String bin=Integer.toBinaryString(num);
//遍历二进制字符串
int counter=0;
for(int i=0;i<bin.length();i++) {
char c=bin.charAt(i);
if(c=='1') {
counter++;
}
}
return counter;
}
}
运行结果:
整数125存在6个1
整数125存在6个1
?