整数反转


package com.siyu.leetcode;

/**
 * 整数反转
 *
 *
 * 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
 *
 * 如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。
 *
 * 假设环境不允许存储 64 位整数(有符号或无符号)。
 *
 * 示例 1:
 *
 * 输入:x = 123
 * 输出:321
 * 示例 2:
 *
 * 输入:x = -123
 * 输出:-321
 * 示例 3:
 *
 * 输入:x = 120
 * 输出:21
 * 示例 4:
 *
 * 输入:x = 0
 * 输出:0
 */
public class L7 {

    public int reverse(int x) {
        int symbol = -1;
        if(x>=0)
            symbol = 1;
        String str = String.valueOf(x*symbol);
        StringBuffer stringBuffer = new StringBuffer(str);
        stringBuffer.reverse();
        str = stringBuffer.toString();

        try{
            int answer = Integer.valueOf(str) * symbol;
            return answer;
        }catch(Exception ex){
            return 0;
        }
    }
}

posted @ 2021-12-14 20:14  姚狗蛋  阅读(24)  评论(0编辑  收藏  举报