免费网站推广服务,郑州营销网站托管,贵阳商城网站开发,千年之恋网页设计代码格式化输出的实用指南在 Java 中#xff0c;占位符是格式化字符串输出的利器#xff0c;让动态生成文本变得简单而优雅。无论是控制台输出、日志记录还是生成报告#xff0c;掌握这些占位符都能让你的代码更加简洁专业。--------------------------------------------------…格式化输出的实用指南在 Java 中占位符是格式化字符串输出的利器让动态生成文本变得简单而优雅。无论是控制台输出、日志记录还是生成报告掌握这些占位符都能让你的代码更加简洁专业。---------------------------------------------------------------------------------------------------------------------------------1. 字符串占位符占位符说明示例输出%s字符串String.format(Hello, %s!, World)Hello, World!%cUnicode 字符String.format(First character: %c, A)First character: A2. 数值占位符占位符说明示例输出%d十进制整数String.format(Age: %d, 25)Age: 25%x十六进制整数String.format(Hex: %x, 255)Hex: ff%o八进制整数String.format(Octal: %o, 10)Octal: 12%f浮点数String.format(Price: %.2f, 5999.99)Price: 5999.99%e科学计数法String.format(Scientific: %e, 5999.99)Scientific: 5.999990e03%a十六进制浮点数String.format(Hex float: %a, 5999.99)Hex float: 0x1.7700000000000p123. 格式化修饰符修饰符说明示例输出%,千位分隔符String.format(Price: ¥%,.2f, 5999.99)Price: ¥5,999.99%.2f保留两位小数String.format(Price: %.2f, 5999.99)Price: 5999.99%05d5位数字不足补0String.format(ID: %05d, 25)ID: 00025%-10s左对齐10字符宽度String.format(Name: %-10s, John)Name: John%d正数前加号String.format(Value: %d, 25)Value: 254. 特殊占位符占位符说明示例输出%n换行符String.format(Hello%nWorld)HellobrWorld%b布尔值String.format(Valid: %b, true)Valid: true二、实战示例1. 商品信息格式化你提供的示例pw.printf(商品%s价格¥%,.2f库存%d%n, 笔记本电脑, 5999.99, 100); // 输出商品笔记本电脑价格¥5,999.99库存1002. 日志格式化常见场景logger.info(用户 {} 登录成功IP: {}, 时间: {}, 张三, 192.168.1.1, new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date())); // 输出用户 张三 登录成功IP: 192.168.1.1, 时间: 2023-10-25 14:30:453. 日期和时间格式化String dateStr String.format(今天是 %tF (星期%tA)时间是 %tT, new Date(), new Date(), new Date()); // 输出今天是 2023-10-25 (星期三)时间是 14:30:454. 金额格式化带货币符号String amount String.format(总金额: ¥%,.2f (人民币), 123456.78); // 输出总金额: ¥123,456.78 (人民币)5. 生成报表System.out.printf(%-15s | %-10s | %-8s%n, 产品, 价格, 库存); System.out.printf(%-15s | ¥%,.2f | %-8d%n, 笔记本电脑, 5999.99, 100); System.out.printf(%-15s | ¥%,.2f | %-8d%n, 智能手机, 3999.00, 250); // 输出 // 产品 | 价格 | 库存 // 笔记本电脑 | ¥5,999.99 | 100 // 智能手机 | ¥3,999.00 | 250三、占位符的高级用法1. 动态格式化1int precision 2; 2String formatted String.format(Price: %. precision f, 5999.99); 3// 输出Price: 5999.992. 与MessageFormat结合使用1String pattern 用户 {0} 在 {1} 登录IP: {2}; 2String message MessageFormat.format(pattern, 张三, new Date(), 192.168.1.1); 3// 输出用户 张三 在 Wed Oct 25 14:30:45 CST 2023 登录IP: 192.168.1.13. 生成带格式的文本文件1try (PrintWriter writer new PrintWriter(report.txt)) { 2 writer.printf(%-20s | %-10s | %-10s%n, Product, Price, Stock); 3 writer.printf(%-20s | ¥%,.2f | %-10d%n, Laptop, 1299.99, 50); 4 writer.printf(%-20s | ¥%,.2f | %-10d%n, Smartphone, 699.50, 120); 5}