目前printf支持以下格式:
%c 单个字符
%d 十进制整数
%f 十进制浮点数
%o 八进制数
%s 字符串
%u 无符号十进制数
%x 十六进制数
%% 输出百分号%
--------------------------------------------------------------------------------------------------------------------------
下面对组成格式说明的各项加以说明:
①%:表示格式说明的起始符号,不可缺少。
②-:有-表示左对齐输出,如省略表示右对齐输出。
③0:有0表示指定空位填0,如省略表示指定空位不填。
④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。
⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。
1 package com.hone.test; 2 3 // "%"表示进行格式化输出, "%"之后的内容为格式的定义。 4 public class Printf { 5 public static void main(String[] args) { 6 double d = 345.678; 7 String s = "hello World"; 8 int a = 123; 9 10 //浮点型的输出 11 System.out.printf("%,d",a); //格式化输出数据,每三个数据加上一个, 12 System.out.println(); 13 System.out.printf("%f", d); // 345.678000 14 System.out.println(); 15 //"9.2"中的9表示输出的长度,2表示小数点后的位数。 345.678位数不够前面不上空格 16 System.out.printf("%9.3f", d); 17 System.out.println(); 18 System.out.printf("%+9.3f", d); //"+"表示输出的数带正负号 19 System.out.println(); 20 System.out.printf("%-9.3f", d); //"-"表示输出的数左对齐(默认为右对齐) 21 System.out.println(); 22 System.out.printf("%+-9.3f",d); //"+-"表示输出的数带正负号且左对齐 23 System.out.println(); 24 25 //整型的输出 26 System.out.printf("%d", a); //"d"表示输出十进制整数。 27 System.out.println(); 28 System.out.printf("%04d", a); //规定为4位,不够左边添加0 29 System.out.println(); 30 System.out.printf("%d%%", a); //如果想输出百分数,则连续用两个 %% 31 System.out.println(); 32 System.out.printf("%o", a); //"o"表示输出八进制整数。 33 System.out.println(); 34 System.out.printf("%x", a); //"x"表示输出八进制整数。 35 36 37 //字符串的输出 38 System.out.println(); 39 System.out.printf("%s%n", s); //输出字符串,其中 %n表示换行 40 41 System.out.printf("输出一个浮点数:%.3f,一个整数:%d,一个字符串:%s",d,a,s); //输出多个变量 42 43 } 44 45 }
时间: 2024-10-09 13:50:01