public class TestYihuo {
/**
* 判断二进制数中1的个数
* @param args
*/
public static void main(String[] args) {
/*int a = 0xaf;
int b = 0xb1;
System.out.println(a^b);
System.out.println(~(a^b));*/
System.out.println(count(0xac));
System.out.println(count1(0xac));
System.out.println(count2(0xac));
}
public static int count(int v)
{
int num = 0;
while(v != 0)
{
if(v % 2 == 1)
num++;
v = v/2;
}
return num;
}
public static int count1(int v)
{
int num = 0;
while(v != 0)
{
num += v&0x01;
v >>= 1;
}
return num;
}
public static int count2(int v)
{
int num = 0;
while(v != 0)
{
v &= v-1;
num++;
}
return num;
}
}
判断二进制数中1的个数
最新推荐文章于 2025-03-05 20:50:44 发布
2万+

被折叠的 条评论
为什么被折叠?



