Java格式化输出主要通过System.out.printf()和String.format()实现,共享C风格格式说明符,支持类型、宽度、精度、对齐等控制,如%d、%.2f、%-10s、%08d等,并推荐使用%n跨平台换行。

Java中格式化输出主要靠System.out.printf()和String.format(),它们共享同一套格式说明符(format specifiers),用法类似C语言的printf。核心是通过占位符控制类型、宽度、精度、对齐等,让输出更清晰、整齐、可读。
常用格式说明符及含义
占位符形如%[参数索引$][标志][宽度][.精度]转换符,常用部分如下:
-
%d:十进制整数(int、long等) -
%f:浮点数,默认6位小数 -
%.2f:保留2位小数 -
%s:字符串 -
%c:字符 -
%x:十六进制整数(小写) -
%08d:至少8位,不足补前导零 -
%-10s:左对齐,最小宽度10,右侧补空格
控制对齐与填充
默认右对齐,添加标志可调整:
-
-:左对齐,如%-15s让字符串左对齐并占满15列 -
0:数字类型用0填充(仅对数值有效),如%05d输出00123 - 空格:正数前加空格(区分正负),如
% d输出123和-123 -
+:强制显示符号,%+d输出+123或-45
处理精度与宽度的实际例子
精度(.n)对不同类型意义不同:
立即学习“Java免费学习笔记(深入)”;
- 浮点数:
%.3f表示小数点后3位(四舍五入),1.23456 → 1.235 - 字符串:
%.5s截取前5个字符,"HelloWorld" → "Hello" - 整数:不支持精度修饰(忽略或报错)
宽度控制整体最小占用列数,超出则按原长显示;结合精度可实现整齐表格效果:
// 示例:打印学生成绩表
Python v2.4版chm格式的中文手册,内容丰富全面,不但是一本手册,你完全可以把她作为一本Python的入门教程,教你如何使用Python解释器、流程控制、数据结构、模板、输入和输出、错误和异常、类和标准库详解等方面的知识技巧。同时后附的手册可以方便你的查询。
System.out.printf("%-8s | %6s | %8.2f%n", "张三", "数学", 89.5);
System.out.printf("%-8s | %6s | %8.2f%n", "李四", "英语", 92.75);
// 输出:
// 张三 | 数学 | 89.50
// 李四 | 英语 | 92.75
注意编码与平台兼容性
格式化本身不涉及编码,但若输出含中文,需确保终端/IDE控制台使用UTF-8编码,否则可能乱码。Windows命令行默认GBK,建议开发时统一用IDE内置终端或配置系统环境。另外,%n是平台无关换行符(等价于System.lineSeparator()),比\n更安全。









