•  

java 手写进制转换算法,求出一个数的二进制数1的个数

2018-02-28

求出一个数的二进制数1的个数

java中如何快速求出一个int 数转二进制数中1的个数


/**
* 统计一个(int)数二进制数1的个数
* @param tag
* @return
 */
public static int countIntToBinaryOfOne(int tag){
	int count=0;
	while (tag!=0) {
		if((tag&1)==1){//是1
			count++;
		}
		tag>>>=1;//无符号右移一位
	}
	return count;
}
/**
 * 最快速
 * @param tag
 * @return
 */
 public static int countIntToBinaryOfOne1(int tag){
    int count=0;
    while (tag!=0) {
         tag=(tag&(tag-1));
        count++;
    }
     return count;
 }





 
申明:本文受法律保护,未经作者同意不得用于商业用途,如转载请说明出处!
评论