题解 | #查找输入整数二进制中1的个数#

查找输入整数二进制中1的个数

https://www.nowcoder.com/practice/1b46eb4cf3fa49b9965ac3c2c1caf5ad

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int a = in.nextInt();
            //两种解法:

            //方法一:把输入的正整数转换为二进制的字符串,然后让字符串中的0都变成空,直接打印出处理过的字符串长度就是二进制下1的个数
            //String b = Integer.toBinaryString(a);
            //String c = b.replaceAll("0","");
            //System.out.println(Integer.bitCount(a));

            //方法二:直接调用内置函数 Integer.bitCount(a) 来直接求出二进制下1的个数
            System.out.println(Integer.bitCount(a));
        }
    }
}

全部评论

相关推荐

拒绝无效加班的小师弟很中意你:求职意向没有,年龄、课程冗余信息可以删掉,需要提升项目经历。排版需要修改。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务