您的位置:首页 > 编程语言 > Java开发

LeetCode7-Integer Reverse

2017-04-17 16:11 295 查看
【题目】

Reverse digits of an integer.

整数翻转

【思路】

题意简单,但某些特殊情况需要注意

1、32位int的取值范围为-2147483648 ~ 2147483647,且abs(-2147483648) = -2147483648;

2、-10翻转后为-1;

3、-2147483648翻转后超过了整型的表数范围,应返回0;

【Java代码】

public class Solution_7_Integer_Reverse {
public int reverse(int x){
String result = "";
if(x == -2147483648)
return 0;
String original = String.valueOf(Math.abs(x));
for(int i = original.length()-1 ; i >= 0 ; i--)
result += original.charAt(i);
if((result.length() == 10) && result.compareTo("2147483647")>0)
return 0;
result = (x>0?"":"-") + result;
return Integer.valueOf(result);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java leetcode 32位