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     }

 

posted on 2016-01-19 21:22  酒仙桥吴彦祖  阅读(130)  评论(0编辑  收藏  举报