两种方法。第一种,是用位运算,将1每次左移,和数字进行&运算,如果成功,则返回1.
第二种,将整数通过方法转换为二进制数,然后统计其中1的数量
public class Solution {
public int NumberOf1(int n) {
int number = 0;
String string = Integer.toBinaryString(n);
char[] chars = string.toCharArray();
for(int i = 0; i < string.length() ; i++){
if(chars[i]=='1')
number++;
}
return number++;
}
}