如题
这就不用分析了,直接依次取每位即可,难点就是个越界判断
public static int reverse(int x) {
int res=0;
while(x!=0) {
int i = x%10;
x=x/10;
if(res>Integer.MAX_VALUE/10||(res==Integer.MAX_VALUE/10&&i>7)
||res<Integer.MIN_VALUE/10||(res==Integer.MIN_VALUE/10&&i<-8)) {
return 0;
}//对于越界判断
res=res*10+i;
}
return res;
}