格式化输出
**printf纯正用法: 1、格式串只放固定文字+占位符,所有值按顺序放后面; 2、%d整数;%4d占4位右对齐,%-4d左对齐(表格对齐神器)。
String.format() 和 printf 是亲兄弟——printf 是"格式化后直接打印",String.format 是"格式化后得到一个字符串"。**
▼/**复制代码* ①打印1-100的偶数 ②生成5个报价单编号BJ2026-0001~0005 ③尝试打印九九乘法表 * <p> * 注意: * 1、判断偶数,取余运算 * 2、格式化输出 %-4d %04d:固定长度,用 0补足,左对齐和右对齐 * 3、for循环 * 4、九九乘法表的四种排版 * 5、用常量来替代格式化 * 6、用常量来自动计算填充空格的长度 * */ public class Day11PrintToolDemo { private static final String CELL_FORMAT = "%2d * %2d = %-4d"; // 九九乘法表格式化的输出 private static final int CELL_WIDTH = String.format(CELL_FORMAT, 1, 1, 1).length(); // 九九乘法表四种排版需要填充空格的长度 public static void main(String[] args) { // 打印1-100的偶数 System.out.println("----------现在开始打印1-100的偶数----------"); for (int i = 1; i <= 100; i++) { if (i % 2 == 0) { System.out.printf("%-4d", i); if (i % 20 == 0) { System.out.println(); } } } // 生成5个报价单编号BJ2026-0001~0005 System.out.println("----------现在开始生成报价单编号----------"); for (int i = 1; i <= 5; i++) { System.out.printf("生成第 %d 个报价单编号:BJ2026-%04d %n", i, i); } // 尝试打印九九乘法表 System.out.println("----------现在开始打印九九乘法表① 直角左下----------"); for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.printf(CELL_FORMAT, i, j, i * j); } System.out.println(); } System.out.println("----------现在开始打印九九乘法表② 直角左上----------"); for (int i = 9; i >= 1; i--) { for (int j = 1; j <= i; j++) { System.out.printf(CELL_FORMAT, i, j, i * j); } System.out.println(); } System.out.println("----------现在开始打印九九乘法表③ 直角右下----------"); for (int i = 1; i <= 9; i++) { System.out.print(" ".repeat((9 - i) * CELL_WIDTH)); // 占位空格 for (int j = 1; j <= i; j++) { System.out.printf(CELL_FORMAT, i, j, i * j); } System.out.println(); } System.out.println("----------现在开始打印九九乘法表④ 直角右上----------"); for (int i = 9; i >= 1; i--) { System.out.print(" ".repeat((9 - i) * CELL_WIDTH)); // 占位空格 for (int j = 1; j <= i; j++) { System.out.printf(CELL_FORMAT, i, j, i * j); } System.out.println(); } } }
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
