【问题标题】:Reversing numbers with leading zeros用前导零反转数字
【发布时间】: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 之间没有区别。

标签: java integer


【解决方案1】:

如果您将每个数字存储为一个数组中的数字,就像他们对一次性编码所做的那样?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 2010-12-25
    相关资源
    最近更新 更多