您的位置:首页 > 编程语言 > Java开发

leetcode解题之07#Reverse Integer Java版 通过溢出测试

2017-03-07 22:35 441 查看
Reverse digits of an integer.

Example1: x = 123, return 321

Example2: x = -123, return -321
Note:

The input is assumed to be a 32-bit signed integer. Your function should
return 0 when the reversed integer overflows
.

public class Solution {
public  int reverse(int x) {
//整型的最小值取绝对值后,比整型的最大值大 1,所有要有最小值判断。
if(x==Integer.MIN_VALUE)
return 0;
//判断正负
int negative=1;
if(x<0){
x=-x;
negative=-1;
}
//定义为long
long res=0;
while(x!=0){
res*=10;
res+=x%10;
x/=10;
}
if(res > Integer.MAX_VALUE)
return 0;
else
return (int)res * negative;

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息