给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
- 循环除以10取余
- 判断溢出
public static int reverse(int x) {
int ans = 0;
while(x!=0) {
int digit = x%10;
x = x/10;
ans = 10*ans+digit;
if(ans>Integer.MAX_VALUE/10 || ans<Integer.MIN_VALUE/10) {
return 0;
}
}
return ans;
}