leetcode-7. Reverse Integer
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之类的判断,