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

相关推荐
bu_shuo1 小时前
MATLAB中的meshgrid和ndgrid
开发语言·matlab
我命由我123452 小时前
Jetpack Compose - MaterialExpressiveTheme 与 MaterialTheme、ColorScheme
android·java·开发语言·java-ee·kotlin·android jetpack·android runtime
晚安code2 小时前
Java 异常与日志规范:错误码、异常处理、日志规约一次讲清
java
深海呐2 小时前
仓颉语言是ArkTs的上层语言吗?就像kotlin和Java
java·开发语言·kotlin·仓颉
隔窗听雨眠2 小时前
OceanBase旁路导入与自增主键冲突深度解析:原理、排查与解决方案
java·服务器·数据库
白露与泡影2 小时前
聊聊物联网Java后端的核心技术难点(水表/电表/充电桩实战)
java·开发语言·物联网
gumichef2 小时前
第一章:面向对象核心——类和对象深度讲解
开发语言·c++
冷咖啡离 我的笨笨2 小时前
数据去重:通过 C# 删除 Excel 中的重复行
开发语言·c#·excel
ao-weilai2 小时前
C++基础:类和对象
开发语言·c++
lilian2332 小时前
Harmony os 技术实战|拼豆制图06:收藏 ID、生成记录与重启恢复怎么不打架
android·java·数据库·harmonyos