技术水平有限,目前只想到了转字符串再反转的方法,性能低到爆,有待加强学习
public class LeetCode2 {
public static void main(String[] args) {
int x= reverse(-123);
System.out.println(x);
}
public static int reverse(int x) {
if(x==0){
return 0;
}
String result=Integer.toString(x);
result=new StringBuilder(result).reverse().toString();
if(x<0){
result= result.substring(0,result.length()-1);
result="-"+result;
}
if(result.contains("-")){
int i=1;
while (result.charAt(i)=='0'){
i++;
}
String newResult=result.substring(i,result.length());
double doubleResult= Double.parseDouble(newResult);
if(doubleResult>Integer.MAX_VALUE||doubleResult<Integer.MIN_VALUE){
return 0;
}
int newInt= Integer.parseInt(newResult);
return -newInt;
}else{
int i=0;
while (result.charAt(i)=='0'){
i++;
}
String newResult=result.substring(i,result.length());
double doubleResult= Double.parseDouble(newResult);
if(doubleResult>Integer.MAX_VALUE||doubleResult<Integer.MIN_VALUE){
return 0;
}
int newInt= Integer.parseInt(newResult);
return newInt;
}
}
}