二进制中1的个数
请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。 例:9的二进制表示为1001,有2位是1
import java.util.Scanner;
public class text1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
System.out.println(Integer.toBinaryString(N));
int count = 0;
for(int i = 0; i < 32; i++) {
if((N&(1<<i))==(1<<i)) {
count++;
}
}
System.out.println(count);
count = 0;
for(int i = 0; i < 32; i++) {
if(((N>>>i)&1)==1) {
count++;
}
}
System.out.println(count);
count = 0;
while(N!=0) {
N = N&(N-1);
count++;
}
System.out.println(count);
}
}