public static int reverse(int x) { if (x > 230 || x < -231 || x == 0) { return 0; } int result = 0; while (x != 0) { int tmp = result; result = result * 10 + x % 10; x = x / 10; // 将计算之后的结果 / 10,判断是否与计算之前相同,如果不同,证明发生溢出,返回0 if(result / 10 != tmp){ return 0; } } return result; }