📅  最后修改于: 2023-12-03 15:32:05.592000             🧑  作者: Mango
在Java程序中,我们可以使用不同的方法输出信息。本文将介绍 Java 中的 printf()
方法,它可以让我们以格式化的方式输出信息,并在输出时设置宽度、精度和对齐方式。
printf()
方法的概述Java 的 printf()
方法与 C 语言中的同名函数非常相似,它可以像格式化字符串一样格式化输出信息。下面是 printf()
方法的参数列表:
public PrintStream printf(String format, Object... args)
其中,第一个参数 format
是格式字符串,它以 %
开头并以格式控制符结束,后面紧跟着一些可选的参数。第二个参数 args
是对应格式字符串中每个格式控制符的参数值,它们按照在格式字符串中出现的顺序传递。
Java 中的格式控制符与 C 语言类似,下面是一些常用的格式控制符及其含义:
| 格式控制符 | 含义 |
| --- | --- |
| %d
| 整数类型(十进制) |
| %f
| 浮点数类型 |
| %e
| 科学计数法 |
| %g
| 自动选择 %f
或 %e
|
| %s
| 字符串类型 |
| %c
| 字符类型 |
| %b
| 布尔类型 |
| %n
| 换行符 |
我们可以使用 printf()
方法中的数字参数来控制输出的宽度。例如:
System.out.printf("%5s%10s%n", "Hello", "World");
在这个例子中,第一个格式控制符 %5s
中的数字表示输出的宽度为 5,不足 5 个字符时自动填充空格。第二个格式控制符 %10s
中的数字表示输出的宽度为 10,不足 10 个字符时自动填充空格。
输出结果如下:
Hello World
我们可以使用 printf()
方法中的 .数字
参数来控制浮点数的精度。例如:
System.out.printf("%.2f%n", Math.PI);
在这个例子中,.2
表示保留 2 位小数。
输出结果如下:
3.14
我们可以使用 printf()
方法中的 -
参数来控制输出对齐方式。例如:
System.out.printf("%-10s%s%n", "Hello", "World");
在这个例子中,%-10s
中的 -
表示左对齐,不填充空格时自动填充空格至宽度为 10,第二个 %s
表示右对齐。
输出结果如下:
Hello World
下面是一个完整的示例,演示了如何在 printf()
方法中使用宽度、精度和对齐方式:
public class PrintfExample {
public static void main(String[] args) {
// 宽度和对齐方式
System.out.printf("%-10s%s%n", "Hello", "World");
System.out.printf("%5s%10s%n", "Hello", "World");
// 精度
System.out.printf("%.2f%n", Math.PI);
// 格式化多个变量
String name = "Tom";
int age = 18;
double score = 89.5;
System.out.printf("姓名:%s,年龄:%d,成绩:%.2f%n", name, age, score);
// 整型格式化
int num1 = 100;
int num2 = -200;
System.out.printf("%+d%n", num1);
System.out.printf("%+d%n", num2);
}
}
输出结果如下:
Hello World
Hello World
3.14
姓名:Tom,年龄:18,成绩:89.50
+100
-200
Java 的 printf()
方法是一个强大的格式化输出工具,它可以在输出时设置宽度、精度和对齐方式。熟练掌握 printf()
方法可以让我们更加灵活地输出信息,使我们的程序更加美观、易读。