首页 相反顺序输出一个整数
文章
取消

相反顺序输出一个整数

起初

编写程序,对输入的一个整数,按相反顺序输出该数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// ReverseInt.java
import java.util.Scanner;
public class ReverseInt {
	public static void main(String[] args) {
		System.out.println("请输入一个整数:");
		Scanner input = new Scanner(System.in);
		String value = "" + input.nextBigInteger();
		input.close();
		String reversed = "";
		for (int i = value.length() - 1; i >= 0; i--) {
			reversed = reversed + value.charAt(i);
		}
		System.out.println(reversed);
	}
}

当时手写代码,for 循环的控制条件边界写错了,当时写成了 for (int i = value.length(); i > 0; i--) 结果数组越界了。应该是 for (int i = value.length() - 1; i >= 0; i--) 的。

换成 input.nextBigInteger(); 好一点。

后来

真是没有必要这样搞,用 StringBuilder 就可以了:

1
2
3
4
5
6
7
8
9
10
11
import java.util.Scanner;
public class ReverseInt {
	public static void main(String[] args) {
		System.out.println("请输入一个整数:");
		Scanner input = new Scanner(System.in);
		StringBuilder value = new StringBuilder();
		value.append(input.nextBigInteger());
		input.close();
		System.out.println(value.reverse());
	}
}

【完】

本文由作者按照 CC BY 4.0 进行授权