我们要按照顺序打印一个数字的每一位,如果我们用循环的方式打印得到的是逆序的,想要的到顺序的比较麻烦。如果我们用递归就能很好的实现。因为递归就是先“递”进去,在“归”出来,刚好是倒着,所以完美的符合题意。
要打印 1 2 3 4,我们就先把1234化成123,再把123化成12,在化成1,这样我们在对它们求模,就可以打印出1 2 3 4 了。当这个数小于10了,说明当前数是原数得最高位。
具体代码实现如下:
public class RecursionPrint{
public static void main(String[] args) {
int num = 1234;
recursionPrint(num);
}
public static void recursionPrint(int num) {
//将1234 --> 123
//123 --> 12
//12 --> 1 递归结束,进行模十打印
if (num > 9) {
recursionPrint(num / 10);
}
System.out.print(num % 10 + " ");
}
}