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

相关推荐
Seven976 分钟前
Condition底层机制剖析:多线程等待与通知机制
java
怒放吧德德9 小时前
Spring Boot 实战:RSA+AES 接口全链路加解密(防篡改 / 防重放)
java·spring boot·后端
郑州光合科技余经理13 小时前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo12313 小时前
matlab画图工具
开发语言·matlab
大大水瓶14 小时前
Tomcat
java·tomcat
dustcell.14 小时前
haproxy七层代理
java·开发语言·前端
norlan_jame14 小时前
C-PHY与D-PHY差异
c语言·开发语言
游离态指针14 小时前
以为发消息=下单成功?RabbitMQ从0到秒杀实战的完整踩坑笔记
java
多恩Stone14 小时前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc
BD_Marathon14 小时前
工厂方法模式
android·java·工厂方法模式