LeetCode_7---Reverse Integer

Reverse digits of an integer.

Example1: x = 123, return 321
Example2: x = -123, return -321


    Code:

    /**
     * 
     */
    
    /**
     * @author MohnSnow
     * @time 2015年6月2日 上午11:41:19
     * 
     */
    public class LeetCode7 {
    
    	/**
    	 * @param argsmengdx
    	 *            -fnst
    	 */
    	//边界条件的考虑,
    	public static int reverse(int x) {
    		int result = 0;
    		int flag = x < 0 ? -1 : 1;//三目运算符去代替if else的判断
    		x = x * flag;
    		while (x > 0) {
    			if (Integer.MAX_VALUE / 10 < result) {//判断溢出:result * 10;
    				return 0;
    			}
    			if (Integer.MAX_VALUE - result * 10 < (x % 10)) {//判断溢出:result,其实就是对下面式子 的溢出判断
    				return 0;
    			}
    			result = (x % 10) + result * 10;
    			x /= 10;
    		}
    		return result * flag;
    	}
    
    	public static void main(String[] args) {
    		int a = 1534236469;
    		System.out.println(a);
    		System.out.println(reverse(a));
    	}
    }
    


    • 0
      点赞
    • 0
      收藏
      觉得还不错? 一键收藏
    • 0
      评论
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值