读书人

求1的个数有关问题

发布时间: 2012-12-22 12:05:05 作者: rapoo

求1的个数问题

又是一年笔试时,很多学弟们开始笔试了。今天学弟问求一个int数的1个数。分析:除法+最后一次取余就能得到了。或者是移位+与运算粘一个第二种方法的代码:

public class  getOneCount {public static void main(String[]args){int n=123;getOneCount(n);}public static void getOneCount(int n){  int count=0;  for(int i=31;i>=0;i--){ if(((1<<i)&n)!=0) count++;  }  System.out.println(count);}}
?
如果是long的话 把左移位数改为63开始就可以 ?也就是i=63。

读书人网 >编程

热点推荐