📜  Java中的格式化程序 out() 方法和示例(1)

📅  最后修改于: 2023-12-03 15:16:33.651000             🧑  作者: Mango

Java中的格式化程序out()方法和示例

在Java中,可以使用System.out.printf()方法对输出进行格式化,同时也可以通过System.out.format()方法实现相同的效果。这两个方法在本质上是等价的,只是在语法上稍有不同。

out()方法的用法

out()方法是System类的一个静态成员,我们可以通过它来输出数据和字符串。它的一般形式如下:

System.out.print();
System.out.println();
System.out.printf();
System.out.format();

其中,print()println()方法类似于C语言中的printf()函数,可以向控制台输出文本和数据。print()方法输出的内容不会自动换行,而println()则会在输出完后自动换行。

printf()format()方法用于进行格式化输出。这两个方法的参数相同,格式化字符串由普通文本和格式指示符组成。指示符由%和字符组成,其中字符表示类型或者转换,可以控制输出的样式。

示例

下面的示例介绍如何对字符串和数字进行格式化输出。

格式化字符串
String name = "Java Programmer";
int age = 25;
System.out.printf("My name is %s and I am %d years old.\n", name, age);

输出:

My name is Java Programmer and I am 25 years old.

在这个示例中,我们使用了s指示符来输出一个字符串,%d指示符来输出一个整数。其中\n字符用于换行。

格式化数字
int num = 1024;
double pi = Math.PI;
System.out.printf("Decimal: %d, Hex: %X\n", num, num);
System.out.printf("pi: %f, e: %e\n", pi, Math.E);

输出:

Decimal: 1024, Hex: 400
pi: 3.141593, e: 2.718282e+00

在这个示例中,我们使用%d指示符输出一个整数,并使用%X指示符输出一个以十六进制表示的整数。我们还使用%f指示符输出一个浮点数,并使用%e指示符输出一个科学计数法表示的浮点数。

控制对齐和填充
System.out.printf("%-10s%-5s%s\n", "Language", "Year", "Designed By");
System.out.printf("%-10s%-5d%s\n", "Java", 1995, "James Gosling");
System.out.printf("%-10s%-5d%s\n", "C++", 1983, "Bjarne Stroustrup");

输出:

Language  Year Designed By
Java      1995 James Gosling
C++       1983 Bjarne Stroustrup

在这个示例中,我们使用%s指示符输出一个字符串。我们可以使用%-10s来指定输出的最小宽度为10个字符,并使用-标志来表示左对齐。我们还可以使用printf()方法的%n指示符来插入一个换行符。

其他指示符
System.out.printf("%04d\n", 123);
System.out.printf("%,d\n", 1000000);
System.out.printf("%.2f\n", Math.PI);

输出:

0123
1,000,000
3.14

在这个示例中,我们使用%04d指示符指定输出的最小宽度为4个字符,并使用0标志来表示用零填充。我们还可以使用%,d指示符来在整数部分添加千分位分隔符。最后,我们使用%.2f指示符来指定输出浮点数时保留2位小数。