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

public static int reverse(int x) {
        if(x==0){
            return 0;
        }
        if(x>(Math.pow(2, 31))-1 || x<(-1*Math.pow(2, 31))){
            return 0;
        }
        long sum = 0;
        while(x!=0){
            sum = sum*10 + x % 10;
            x=x/10;
        }
        if(sum>(Math.pow(2, 31))-1 || sum<(-1*Math.pow(2, 31))){
            return 0;
        }else {
            return (int) sum;
        }
    }

 

posted @ 2019-05-05 21:31  紫色的雪  阅读(1976)  评论(0编辑  收藏  举报