1.整数反转

旧街凉风 提交于 2019-11-28 15:45:23

1.如何反转

public static int reverse(int x) {
       //用数学思维来看
        int rpc = 0;
        while (x != 0)
        {
            int newrpc = rpc*10 + x%10;//数学思维取反过程
            rpc = newrpc;
            if ((newrpc - x%10)/10 != rpc) {return 0;}//判断,不相等则说明溢出了
            x = x/10;
           
        }
        return rpc;
    }
完整的反转整数
long temp=0;
        while(x!=0){
            temp*=10;
            temp+=x%10;
            x/=10;
        }
2.反转溢出问题
(1)我觉得溢出这个最简单的解决办法就是捕获异常,返回0
(2)2的31次方,Math.pow(2,31)
(3)为了解决溢出问题,我们使用了long类型来存储结果,最后判断一次即可
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!