方法一
转化成Char[]来解
import java.util.Scanner;
public class Reverse {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
String n = sc.next();
boolean flag = false;
char[] arr = n.toCharArray();
char[] newArr;
if (arr[0] == '-') {
flag = true;
newArr = new char[arr.length - 1];
for (int i = 1; i < arr.length; i++) {
newArr[newArr.length - i] = arr[i];
}
} else {
newArr = new char[arr.length];
for (int i = 0; i < arr.length; i++) {
newArr[arr.length - 1 - i] = arr[i];
}
}
String res = String.valueOf(newArr);
if (flag) {
System.out.println(Integer.parseInt(res) * -1);
} else {
System.out.println(Integer.parseInt(res));
}
}
}
}
方法二
转换成String来解
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int flag = 1; if (n < 0 ) { flag = -1; n = -n; }
StringBuilder sb = new StringBuilder(String.valueOf(n));
System.out.println(Integer.valueOf(sb.reverse().toString()) * flag);
return;
}
}
方法三
数学方法
public class Main {
public static int reverse(int x) {
int rev = 0;
while (x != 0) {
rev = rev * 10 + x % 10;
x /= 10;
}
return rev;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int input = in.nextInt();
System.out.println(reverse(input));
}
}