【发布时间】:2020-02-13 08:44:59
【问题描述】:
我想编写一个反转数字的程序(不将其转换为字符串)。我的代码适用于除前导零的数字以外的所有数字,例如:500 和类似的数字。它只是在我想要005 时给我5。
这是我的代码
System.out.println("Enter a number with at most 10 digits:");
long inputNumber = myKeyboard.nextLong();
long tempInputNumber = inputNumber;
long reversedNumber = 0;
int digits = 0;
int rightMostDigit;
while(tempInputNumber != 0) {
rightMostDigit = (int)tempInputNumber % 10;
reversedNumber = (reversedNumber*10)+rightMostDigit;
tempInputNumber = tempInputNumber / 10;
digits++;
}
【问题讨论】:
-
Java 中的数字没有前导零。您需要
String。祝你好运。 -
long类型表示一定范围内的整数。它不代表您希望输出中有多少个前导零。所以long为 5 和long为 005 之间没有区别。