标签:等于 dig 处理 java while example 输入 etc result
7. Reverse Integer
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
此题题意为反转一个整数个各个数字,比如123,翻转后为321
java代码:
public class Solution {
public int reverse(int x) {
long result =0;
while(x != 0)
{
result = (result*10) + (x%10);
x = x/10;
}
return (int)result;
}
}
但是上面输入的x的值太大返回值就会越界,也就是说没有处理x值太大的情况,下面是处理过后这种异常的代码
java代码:
public class Solution {
public int reverse(int x) {
int rev=0;
int tail=0;
int newrev=0;
while(x!=0){
tail=x%10;
newrev=rev*10+tail;
if((newrev-tail)/10!=rev)
return 0;
rev=newrev;
x=x/10;
}
return rev;
}
}
如果存在越界,那么newrev就不会等于之前的那个值了。不需要flag之类的判断,
标签:等于 dig 处理 java while example 输入 etc result
原文地址:http://www.cnblogs.com/lcbg/p/6576807.html