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:输出整数时使用千位分隔符。

相关推荐
淡海水8 分钟前
02-07-原理篇-GC暂停时间的本质
开发语言·unity·c#·gc·暂停时间
工具派11 分钟前
Agent 不是玄学:用 Java 状态机思维理解 LangGraph
java·人工智能·python
十年Java程序媛21 分钟前
String / StringBuilder / StringBuffer|别再乱用字符串拼接,底层原理一次讲透
java·spring boot·后端
傲世仙尊22 分钟前
类和对象中-构造函数与析构函数把初始化清理自动化
java·运维·自动化
她的男孩24 分钟前
权限通了、列表有数,一点分页就炸Forge Admin 用 COUNT(1) 扛住复杂待办
java·spring boot·mybatis
骑着蜗牛撵大象32731 分钟前
豆包 Seed 驱动的记账智能体:从拍票抽取到月报生成的全链路落地记录
java·前端·javascript·结构化输出·豆包seed·多模态识别·记账系统
憧憬成为java架构高手的小白40 分钟前
langchain4j手敲理解
java·langchain
北i1 小时前
Dubbo 默认超时重试:把下游打雪崩的隐形放大器
开发语言·qt·dubbo
10mAh1 小时前
【Java】ArrayList 遍历删除为什么报错?三种写法与漏删复现
java·开发语言·windows
thefool1122662 小时前
多线程 4
java