package java程序员面试笔试宝典;
public class 题8_4_3二进制中1的个数 {
public static void main(String[] args) {
System.out.println(getNumberOf1(31));
}
public static int getNumberOf1_1(int n){
int count=0;
while(n>0){
n=n&(n-1);
//System.out.print(Integer.toBinaryString(n)+" ");
count++;
}
return count;
}
public static int getNumberOf1_0(int n){
int count=0;
while(n>0){
// if(n%2!=0){
// count++;
// }
if((n&1)!=0){
count++;
}
n=n>>1;
}
return count;
}
public static int getNumberOf1(int n){
String str=Integer.toBinaryString(n);
int count=0;
for (int i = 0; i < str.length(); i++) {
if(str.charAt(i)=='1'){
count++;
}
}
return count;
}
}