考察一个无符号数中二进制的个数,本体考虑使用位运算. 与剑指offer上的题目类似,需要注意的是对无符号数进行处理,应该使用>>>而不是>> 判断最后一位的奇偶使用 a&1 移位使用>>> Code public int hammingWeight(int n) { int count=0; while(n!=0){ //判断最后一位的奇偶 if((n&1)==1) count++; //注意是无符号移位 使用>>> n=n>>>1; } return count; }