/**
* 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
*/
&按位与的操作:如果二进制中有1的话,按位与可以将二进制的1算出来。
public class NumberOf1 {
public static int NumberOf1(int n) {
int count=0;
int flag=1;
while(flag!=0) {
if((n&flag)!=0) {
count++;
}
flag=flag<<1;
}
return count;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=NumberOf1(-2);
System.out.println(a);
}
}