题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
知识点1:int转二进制字符串
String str = Integer.toBinaryString(intVal);
HJ15题答案
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//输入一个32位int型数字
Integer input = sc.nextInt();
//整数 转 二进制字符串
String bstr = Integer.toBinaryString(input);
char[] bArr = bstr.toCharArray();
int count = 0;
for(int i=0;i<bstr.length();i++){
if(bArr[i]== '1'){
count ++;
}
}
System.out.println(count);
}
}