我知道在 Java 中使用 System.out.println(Integer.toBinaryString(num));
来实现这一点非常容易
但是,我想使用循环来执行此操作,我尝试了此操作,但顺序相反。我该如何解决这个问题:
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
while (num >= 2) {
System.out.print(num % 2);
num = (int) num / 2;
}
System.out.println(num);
}
}
例如;
输入数字=8
打印0001
但一定是1000
相反。
最佳答案
使用字符串存储结果:
String binaryString = Integer.toString(num % 2);
while (num >= 2) {
num = (int) num / 2;
binaryString = Integer.toString(num % 2) + binaryString;
}
System.out.println(binaryString);
关于java - 使用老式方式将整数转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42650695/