example1:
input:123
output:321
example2:
input:-123
output:-321
example3:
input:230
output:32
主要注意整型数字反转后超出范围
code1:
public int reverse(int x) {
String s=x+"";
char[] ss=s.toCharArray();
StringBuilder sb=new StringBuilder(ss.length);
for(int i=ss.length-1;i>=0;i--){
sb.append(ss[i]);
}
String result=sb.toString();
int count=0;
int i=0;
for(;i<ss.length;i++){
if(result.charAt(i)=='0'){
count++;
}else{
break;
}
}
if(x<0){
result="-"+sb.substring(count,ss.length-1);
}else{
result=sb.substring(count);
}
if(result.isEmpty())
return 0;
long num=Long.parseLong(result);
return num>=Integer.MAX_VALUE||num<=Integer.MIN_VALUE?0:(int)num;
}
}
code2:
public int reverse(int x) {
long result=0;
while(x!=0){
int num1=x%10;
result=result*10+num1;
if(result>Integer.MAX_VALUE||result<Integer.MIN_VALUE)
return 0;
x=x/10;
}
return (int)result;
}
}