描述
给定一个32位的有符号整数num,将num中的数字部分反转,最后返回反转的结果
1.只反转数字部分,符号位部分不反转
解题思路:
可以先转为String再用StringBuffer.reverse方法实现
public int reverse (int x) {
boolean fase = false;
if(x<0){
fase=true;
x=x*(-1);
}
String a =new StringBuffer(String.valueOf(x)).reverse().toString() ;
long s = Long.valueOf(a).longValue();
if(fase){
return (int) (s*(-1));
}
return (int)s;
}
也可以使用旋转数字来实现
public int reverse1 (int x){
// write code here
long ans = 0;
while (x != 0){
ans = ans*10+(x%10);
x/=10;
}
return (int)ans;
}