注意这里如果y是int,那么 Integer.MAX_VALUE/10;
或者y暂时用long,那么就判断Integer.MAX_VALUE,输出时再转成(int),这个方法似乎更快。
class Solution {
public int reverse(int x) {
int y = 0;
int sign = x<0?-1:1;
x= Math.abs(x);
while(x > 0){
if(y > Integer.MAX_VALUE/10 || y < Integer.MIN_VALUE/10) return 0;
y = y *10 + x%10;
x = x/10;
}
return y*sign;
}
}