JAVA------------------华为机试-----------------------求int型正整数在内存中存储时1的个数
题目描述
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
输入描述:
输入一个整数(int类型)
输出描述:
这个数转换成2进制后,输出1的个数
示例1
输入
5
输出
2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int counter = 0;
String aString = Integer.toBinaryString(n);
for (int i = 0; i < aString.length(); i++) {
if(aString.charAt(i) == '1') {
counter++;
}
}
System.out.println(counter);
}
}