整数反转
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
Java实现
public static void main(String args[]){ int res = reverse(-1256789881); System.out.println(res);//-1889876521 } public static int reverse(int x) { long result = 0; while (x != 0){ int temp = x%10; result = result*10+temp; x /= 10; } if (result>Math.pow(2,31)-1 || result<Math.pow(-2,31)){ return 0; } return (int)result; }
JS实现
var reverse = function(x) { var y = Math.abs(x);//返回x的绝对值 //toString将整数转换为字符串,split将字符串分割为字符串数组 //reverse将数组元素反转,join把数组内的所有元素放入一个字符串 //parseInt把字符串解析成特定基数对应的整型数字 //var res = parseInt(x.toString().split("").reverse().join("")); //此方式不需要上一条声明y的语句 var res = y.toString().split("").reverse().join(""); if (x<0) { res= -res; } if (res > Math.pow(2,31)-1 || res < Math.pow(-2,31) ){ return 0; }else{ return res; } } console.log(reverse(123));//321
记录学习笔记,有其他参考,如有侵权,联系删除
本文来自博客园,作者:rissa,转载请注明原文链接:https://www.cnblogs.com/rissa/p/15305361.html

浙公网安备 33010602011771号