在 java 中实现九九乘法表,核心做法是使用两个嵌套的 for 循环:外层循环控制行数(1 到 9),内层循环控制每行的列数(从 1 到当前行号)。通过这种结构,可以逐行打印出完整的乘法口诀。具体实现时,只需在内层循环中输出格式化的字符串,并在每行结束后换行即可。

如何控制内层循环的边界以匹配行数?
内层循环的边界条件应设置为小于或等于外层循环的当前变量值。例如,当外层循环变量 i 为 3 时,内层循环变量 j 应从 1 遍历到 3。这样能确保第 n 行恰好有 n 个乘法表达式,从而形成左对齐的三角形布局。若将边界设为固定值 9,则会生成矩形矩阵而非标准的九九乘法表。

public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + "*" + i + "=" + (i * j) + "\t");
}
System.out.println();
}
}
}怎样优化输出格式使表格更整齐?
使用 System.out.printf() 或 String.format() 可以精确控制每个乘法表达式的宽度。默认使用制表符 \t 可能在某些终端下对齐不佳,建议指定最小宽度,如 %-4s 表示左对齐且占 4 个字符位。这能确保无论乘积是单位数还是两位数,各列都能垂直对齐,提升视觉整洁度。
立即学习“Java免费学习笔记(深入)”;

public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.printf("%d*%d=%-4d", j, i, i * j);
}
System.out.println();
}
}
}如果只打印上半三角部分会怎样?
上述代码天然只打印上半三角部分,因为内层循环上限是 i 而非 9。若希望打印下半三角(即第 1 行 9 项,第 9 行 1 项),需调整内层循环逻辑,使其从某个起始值递增到 9,并配合空格填充左侧空白。但标准九九乘法表通常指上半三角形式,这也是大多数教材和面试题的标准答案。


















