给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123 输出: 321
示例 2:
输入: -123 输出: -321
示例 3:
输入: 120 输出: 21
输入的参数:public int reverse(int x)
解决步骤:
1.定义一个rev=0 当做初始值 , 123 每次得到末位数 123 % 10 得到末位数 之后 将值123/10 继续遍历下一个末位数
2.判断是否溢出,溢出返回0
3.将整数反转,rev = rev * 10 + pop
代码:
public class ReverseNum {
public static void main(String[] args) {
int x = 34567;
int rs = reverse(x);
System.out.println(rs);
}
public static int reverse(int x) {
int rev = 0;
while(x!=0) {
int pop = x % 10;
x = x / 10;
if (x > Integer.MAX_VALUE || x < Integer.MIN_VALUE) return 0;
rev = rev * 10 + pop;
}
return rev;
}
}
运行截图: