小白一下午不断调试,主要是不知道怎么在java中实现类似python中
a = "Hello" print("a * 2 输出结果:", a * 2)
a * 2 输出结果: HelloHello
后来看见 https://blog.csdn.net/IndexMan/article/details/79462201 中用
System.out.format("%" + (n - i) * 2 + "s", "");
觉得很巧妙。利用了字符串的拼接,实现了对齐的功能。
完整代码如下:
public class YangHui {
public static void main(String args[]) {
final int NMAX = 10;
int[][] odds = new int[NMAX][];
for (int k = 0; k < odds.length; k++) {
odds[k] = new int[k+1];
}
for (int i = 0; i < odds.length; i++) {
System.out.printf("%" + (odds.length - i)*2 + "s", "");
for (int j = 0; j < i + 1; j++) {
if (j==0||j==i) {
odds[i][j] = 1;
}else {
odds[i][j] = odds[i-1][j-1] + odds[i-1][j];
}
System.out.printf("%4d", odds[i][j]);
}
System.out.println();
}
}
}
效果: