整数的反转数字

时间:2016-05-04 06:45:52

标签: java

以下是问题 我想反转一个整数的数字。

  • 示例1:x = 123,返回321
  • 示例2:x = -123,返回-321

我的代码适用于最多9位数字的所有情况。如果是10位输入,则不会反向写入。我该怎么办?

我的代码是:

 int reverse1 (int x){
        int n = x;
        int temp = 0;
        if (n > 0){
           while (n > 0){
              int a = n % 10;
              temp = (temp * 10) + a;
              n = n / 10;
           }
        } else {
           while (n < 0){
              int a = n % 10;
              temp = (temp * 10) + a;
              n = n / 10;
           }
        }
        return temp;
}

1 个答案:

答案 0 :(得分:3)

10位数字可能高于Integer.MAX_VALUE2147483647),或其反转数字可能高于Integer.MAX_VALUE。您可以使用long代替int来支持更大的数字。