java中的Integer.toBinaryString(n) 方法将十进制转换为2进制字符串

import java.util.Scanner;

/**
 * @author zhangnianlei
 * @description
 * @date 2021/8/2
 */
public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int n = sc.nextInt();
            String[] split = Integer.toBinaryString(n).split("");
            int sum = 0;
            for (String s : split) {
                if ("1".equals(s)) {
                    sum += 1;
                }
            }
            System.out.println(sum);
        }
    }
}