题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
import java.util.Scanner; import java.lang.Integer; import java.lang.Character; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); //十进制转二进制,最小二除法 //二进制long转string //string.toCharArr() String str = Integer.toBinaryString(n); char[] charArr = str.toCharArray(); int count = 0; for(int i=0; i<charArr.length; i++){ //int item = Integer.parseInt(String.valueOf(charArr[i])); int item = Character.getNumericValue(charArr[i]); //char转int两者效果一致 if(item == 1){ count++; } } System.out.println(count); } }