题目:请实现一个函数,输入一个整数,输出该数二进制补码表示中1的个数
分析:位运算,扫一遍二进制字符串两种都可以
public class NumberOf1 {
public static void main(String[] args) {
System.out.println(numberOf1_1(9));
System.out.println(numberOf1_2(9));
}
public static int numberOf1_1(int source){
int ans = 0;
while(source!=0){
if((source&1)>0)
ans++;
source>>>=1;
}
return ans;
}
public static int numberOf1_2(int source){
int ans = 0;
String binary = Integer.toBinaryString(source);
for(int i=0;i