在Java中,String.format()
和System.out.printf()
方法都可以用来格式化输出。它们使用一个格式化字符串,该字符串包含普通文本和各种转换说明符,这些转换说明符用于指定如何格式化参数。以下是一些常见的格式化输出选项:
%d
:十进制整数%x
或 %X
:十六进制整数(x表示小写,X表示大写)%o
:八进制整数%f
:浮点数(保留小数点后6位)%e
或 %E
:科学计数法表示的浮点数(e表示小写,E表示大写)%g
:根据数值的大小自动选择%f或%e%a
或 %A
:十六进制浮点数表示(a表示小写,A表示大写)%s
:字符串%c
:字符%b
:布尔值%n
:换行符%%
:百分号(%)此外,还可以在转换说明符之前添加一些可选的标志和修饰符,例如:
-
:左对齐+
:显示正负号0
:用0填充#
:显示特殊字符(如十六进制的0x前缀)还可以指定字段宽度和精度,例如:
%5d
:输出为5位十进制整数,不足部分用空格填充%.2f
:输出为保留两位小数的浮点数%-5s
:输出为5位宽度的字符串,左对齐,不足部分用空格填充这里有一个简单的例子:
public class FormatExample {
public static void main(String[] args) {
int intValue = 42;
double doubleValue = 3.14159;
String stringValue = "Hello, World!";
System.out.printf("Integer: %d%n", intValue);
System.out.printf("Double: %.2f%n", doubleValue);
System.out.printf("String: %-10s%n", stringValue);
}
}
输出:
Integer: 42
Double: 3.14
String: Hello, World!