欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

求int型正整数在内存中存储时1的个数

程序员文章站 2022-07-13 13:21:38
...

题目描述

功能: 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。


输入描述:

输入一个整数(int类型)

输出描述:

这个数转换成2进制后,输出1的个数


示例:

输入: 5

输出: 2


思路:当给定数不为零,如果给定数和1与运算等于1,计数加;给定数右移1位;

代码:

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int count = 0;
            int i = sc.nextInt();
            while(i != 0){
                if((i & 1) == 1) count++;
                i >>= 1;
            }
            System.out.println(count);
        }
        sc.close();
    }
}