Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
此题简单,但是需要考虑一些边界上的处理会在面试中加分。
另外这里考虑了一下溢出处理
1 public static int reverse(int x) { 2 3 int min = Integer.MIN_VALUE; 4 int max = Integer.MAX_VALUE; 5 // sum在加法过程中会溢出int范围 6 long sum = 0; 7 while (x != 0) { 8 int temp = x % 10; 9 sum = sum * 10 + temp; 10 if (sum > max || sum < min) { 11 sum = sum > 0 ? max : min; 12 return 0; 13 } 14 x = x / 10; 15 } 16 return (int) sum; 17 }