java 打印详解_Java格式化输出printf()详解

概要: 本文通过实例详细介绍Java格式化输出 System.out.printf() 方法的使用、参数的含义、格式转换符使用时的注意事项。

System.out.printf() 是 Java 5 开始引入的,用法类似 C语言的 printf() 函数,但注意存在一定差异。

1. printf API

// 使用指定的格式字符串和参数将格式化字符串写入入到输出流

public PrintStream printf(String format, Object ... args)

// 基于本地化环境使用指定的格式字符串和参数将格式化字符串写入到输出流

public PrintStream printf(Locale l, String format, Object ... args)

以上2个方法,当 format 为 null 时,抛出 NPE.

2. 参数说明

1. format

format 是以百分号(%) 开头的格式说明字符串,具体格式如下

%[argument_index$][flags][width][.precision]conversion

a1771a36bdd1dc09bf167adb954bb1bd.png

可选的 argument_index 是十进制整数,表示参数列表中参数的位置。 第一个参数由“ 1$ ”引用,第二个由“ 2$ ” 引用 ,等等。 argument_index 必须紧跟%后面,并以$ 结束。

note: 参数索引值从1开始,而不是从0开始,%1$ 对第一个参数格式化。这就避免了与0标志混淆。

可选 flags 指定格式化输出外观的各种标志。 有效标志集取决于 conversion。

可选 width是正十进制整数,表示要写入到输出的字符个数(注意对于浮点数:也包含小数点所占的1个字和 负数的负号所占的1个字符)。 当实际字符数小于指定的宽度时,最前面用 flags 指定的标志填充(若未指定,默认用空格)。

eg: v=2.3, %5.2f 输出5.20,且前面包含1个空格。共打印5个字符,整数位1个5,1个小数点,2个精度,长度为4,比指定的宽度少1为,用1个前导空格代替。

可选 precision 是一个非负十进制整数,通常用于限制字符数。 具体行为取决于转换。

conversion (必需) 是一个字符,指示如何格式化参数。 给定参数的有效转换集取决于参数的数据类型。

表1-用于printf flags(标志) 说明

标志

目的

示例

+

打印正数和负数的符号

+3333.33

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值