杨辉三角如果出现多位数怎么对齐啊

杨辉三角前几行还好说,但是到后面出现多位数,就不能对齐了。
import java.util.*;
public class yangHui {
public static void main(String args[]) {
int n;
Scanner input = new Scanner(System.in);
System.out.print("请输入行数n:");
n = input.nextInt();
int mat[][] = new int[n][];
int i,j;
for (i = 0; i < n; i++) {
mat[i] = new int[i + 1];
mat[i][0] = 1;
mat[i][i] = 1;
for (j = 1; j < i; j++){
mat[i][j] = mat[i - 1][j - 1] + mat[i - 1][j];
}
}
for (i = 0; i < mat.length; i++){
for (j = 1; j < n - i; j++)
System.out.print(" ");
for (j = 0; j < mat[i].length; j++)
System.out.print(" " + mat[i][j]);
System.out.println();
}
}
}
这是我自己写的,再怎么更改啊,要求所有行数对齐,求高手指教!附详细解释

应该是数字长度变更造成的,因为1-9的个位数只占1个位置,10-99就是2个位置了,可以转成String判断长度之后后边跟空格调整追问

能不能具体点,我是新手,有些弄不懂

追答

比如把 int 型 的 1 变成 String 型 的 “1 ” 1后边4个空格,这样就占位了
遇到12 后边就添3个空格 “12 ”这样应该能对齐。不要纠结于这种输出上的东西了,程序没有用控制台做的,呵呵

温馨提示:答案为网友推荐,仅供参考