标签:数字 一个 class 输出 for 位运算 ++ 统计 index
public class Solution {
public int NumberOf1(int n) {
int index = 1;
int number = 0;
while(index!=0){
if((n & index)!=0)
number++;
index = index << 1;
}
return number;
}
}
先上第一种
两种方法。第一种,是用位运算,将1每次左移,和数字进行&运算,如果成功,则返回1.
第二种,将整数通过方法转换为二进制数,然后统计其中1的数量
第二种
int number = 0;
String string = Integer.toBinaryString(n);
char[] chars = string.toCharArray();
int i = 0;
for( ; i < string.length() ; i++){
if(chars[i]==‘1‘)
number++;
}
return number++;
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
标签:数字 一个 class 输出 for 位运算 ++ 统计 index
原文地址:http://www.cnblogs.com/CloudStrife/p/7224374.html