编辑代码

class Main {

    // 递归方法打印数字
    private static void Recursively(int current, int n) {
        if (current > n) return; // 递归终止条件

        // 打印当前行
        CurrentLine(current, current);
        System.out.println();

        // 递归调用下一行
        Recursively(current + 1, n);
    }

    // 非递归方法打印数字
    private static void Iteratively(int n) {
        for (int i = 1; i <= n; i++) {
            // 打印当前行
            CurrentLine(i, i);
            System.out.println();
        }
    }

    // 打印当前行的数字
    private static void CurrentLine(int num, int times) {
        for (int i = 0; i < times; i++) {
            System.out.print(num + " ");
        }
    }

    public static void main(String[] args) {
        int n = 5; // 可以将n设为任意值

        // 使用递归方法打印
        System.out.println("递归方法输出:");
        Recursively(1, n);

        // 使用非递归方法打印
        System.out.println("非递归方法输出:");
        Iteratively(n);
    }
}