进制转换Java中有专门的方法可以直接使用,Long.toString(x,k),表示将一个十进制数x,转换成k进制字符串
很好记,因为十进制肯定是整形或者长整型,所以是Integer或者Long的函数,要将它转换成其它进制,由于其它进制最好是用字符串表示,因为可能含有字符,所以就使用toString方法
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner=new Scanner(System.in);
long x=scanner.nextLong();
String string=Long.toString(x,2);
char c[]=string.toCharArray();
int count=0;
for (int i = 0; i < c.length; i++) {
if(c[i]=='1')count++;
}
System.out.println(count);
}
}



京公网安备 11010502036488号