求二进制数中1的个数
给定一个整数,输出这个整数二进制表示中的1的个数。例如,给定整数7,其中二进制表示为111,因此输出结果为3.
该问题可以采用位操作来执行完成。
思路:首先,判断这个数的最后一位是否为1,如果为1 ,则计数器加 1,然后右移丢掉最后一位。循环执行该操作,直到这个数等于0
为止。
public class Test{
public static int countOne(int n){
int count=0;//用来计数
while(n>0){
if((n&1)==1)//判断最后一位是不是1
count ++ ;
n>>=1;
}
return count;
}
public static void main(String[] args){
System.out.println(countOne(7));
}
}
博主 Email:32595667@139.com QQ:32595667

浙公网安备 33010602011771号