要求:将输入的int型变量进行reverse,例如-123转化为-321
注意:int型变量的溢出问题,返回的result定义为long型变量。对result判断是否溢出,如果没有溢出,再对它进行强制类型转换,转换为int型。如果溢出直接返回0。
public class Solution {
public int reverse(int x) {
int sign = 1;
if(x < 0){
sign = -1;
x *= -1;
}
long result = 0;
while(x != 0){
result = result * 10 + x % 10;
if(sign * result > Integer.MAX_VALUE ||
sign * result < Integer.MIN_VALUE)
return 0;
x = x / 10;
}
return (int)result * sign;
}}