题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
import java.util.Scanner;
public class ReturnNumberof1InBinary {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) //与next()不同的是,hasnext()返回的是true
{
int n = sc.nextInt(); //输入一个数n
String s = Integer.toBinaryString(n); //将n转为二进制数,并赋给s
int count = 0;
for (int j = 0; j < s.length(); j++) //进行循环
if (s.charAt(j) == '1') //charAt(int index)的作用是检测当前索引下的值
count++;
System.out.println(count);
break;
}
}
}