题目:给定一个int值,将其反转输出
例子:
int a = 123 -> 321
int b = -123 -> -321
思路:
- 可以将整型转为字符,然后通过下标来反转,这是最容易想到的办法,但是逼格不够高。
- 通过对数值不停的模10,再*10,不断的相加
陷阱:
反转以后int值有可能会越界
代码:
public class Solution{
public int reverseInteger(int n){
//初始值为0
int temp = 0;
while( n!= 0 ){
int res = n % 10;
int temp = temp * 10 + res;
n /= 10;
if(temp%10 != res){
//说明越界了
return 0;
}
}
return temp;
}
}