Leecode-7.整数反转

2020-05-18 15:13:14 浏览数 (3)

题目

描述

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

示例 1:

代码语言:javascript复制
输入: 123
输出: 321

示例 2:

代码语言:javascript复制
输入: -123
输出: -321

示例 2:

代码语言:javascript复制
输入: 120
输出: 21

解答

思路

利用StringBuilder的reverse方法,一步搞定。

代码

代码语言:javascript复制
class Solution {
    public int reverse(int x) {
        boolean b = x >= 0;
        StringBuilder sb = new StringBuilder(String.valueOf(x));
        long l = b ? Long.valueOf(sb.reverse().toString()) :  Long.valueOf(sb.deleteCharAt(0).reverse().toString());
        if (l > Integer.MAX_VALUE || l < Integer.MIN_VALUE) {
            return 0;
        } else {
            return b ? Integer.valueOf(sb.toString()) : 0 - Integer.valueOf(sb.toString());
        }
    }
}

0 人点赞