Java的格式化输出

在Java中,printf 方法支持多种格式说明符,用于格式化不同类型的数据

常用的格式说明符:

|---------------|-------------------------------------------------|
| %d%i | 用于输出十进制整数 |
| %x%X | 用于输出十六进制整数(小写或大写字母) |
| %o | 用于输出八进制整数 |
| %u | 用于输出无符号整数(已废弃,不推荐使用) |
| %f | 用于输出浮点数,默认精度为6位小数 |
| %.<digits>f | 用于输出浮点数,并指定小数点后的位数 |
| %e%E | 用于输出科学计数法表示的浮点数(小写或大写E) |
| %g%G | 用于输出浮点数,根据数值的大小自动选择 %f%e(小写或大写) |
| %a%A | 用于输出十六进制浮点数(小写或大写字母) |
| %s | 用于输出字符串 |
| %c | 用于输出单个字符 |
| %b | 用于输出布尔值(true/false) |
| %h | 用于输出散列码(hashCode) |
| %t | 用于输出时间(从1970年1月1日00:00:00 GMT到现在的毫秒数) |
| %n | 用于输出平台的行分隔符(在Windows上是\r\n,在Unix/Linux上是\n) |
| %% | 用于输出百分号(%) |
[printf常用格式说明符]

printf的flags

|------------|-----------------------------------------------|
| 标志 | 目的 |
| + | 打印正数和负数的符号 |
| 空格 | 在正数之前添加空格 |
| 0 | 数字前面补0 |
| - | 左对齐(不指定-时,默认右对齐) |
| ( | 将负数括在括号内 |
| , | 添加分组分隔符(只对定点浮点数整数部分添加分组分隔符,小数部分不会添加) |
| #(对于f格式) | 包含小数点 |
| #(对于x或o格式) | 添加前缀0x或0 |
| $ | 指定要格式化的参数索引。例如,%1d d %1dx 将以十进制和十六进制格式打印第1个参数 |
| < | <格式化前面说明的数值。例如,%d<%x,将以十进制和十六进制打印同一个值 |
[printf的flags]

此外,还可以通过指定宽度、精度和标志来进一步控制输出格式

%5d:输出宽度为5的整数,右对齐。

%-5d:输出宽度为5的整数,左对齐。

%05d:输出宽度为5的整数,用0填充空白。

%.2f:输出小数点后两位的浮点数。

%,d:输出整数时使用千位分隔符。

相关推荐
RealPluto15 分钟前
Spring AOP 失效排查
java·spring
码路飞40 分钟前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
Nyarlathotep01131 小时前
LinkedList源码分析
java·后端
用户8307196840821 小时前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
带刺的坐椅2 小时前
SolonCode v0.0.20 发布 - 编程智能体(新增子代理和浏览器能力)
java·ai·agent·solon·solon-ai·claude-code·openclaw
会员源码网3 小时前
数字格式化陷阱:如何优雅处理 NumberFormatException
java
孔明click333 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·sa-token·开源·springboot·登录·权限认证
程序猿阿越4 小时前
Kafka4源码(二)创建Topic
java·后端·源码阅读
悟空码字4 小时前
Spring Boot 整合 MongoDB 最佳实践:CRUD、分页、事务、索引全覆盖
java·spring boot·后端
省长4 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·后端·开源