📅  最后修改于: 2023-12-03 14:42:51.129000             🧑  作者: Mango
PrintStream 类提供了许多用于格式化输出的方法,其中之一就是 format(Locale, String, Object) 方法。它的作用是将一个格式化字符串和一个或多个参数传递给此输出流的一个 format() 方法,以使用指定的位置、格式和语言环境生成一个格式化的字符串。
public PrintStream format(Locale l, String format, Object... args)
此方法返回此输出流本身的引用,以便连续调用。
下面是一个使用 format(Locale, String, Object) 方法的示例:
import java.io.PrintStream;
import java.util.Locale;
public class FormatExample {
public static void main(String[] args) {
PrintStream ps = new PrintStream(System.out);
ps.format(Locale.US, "Hello, %s! Today is %tD\n", "John", System.currentTimeMillis());
ps.close();
}
}
输出结果为:
Hello, John! Today is 02/12/21
在上面的示例中,我们创建了一个 PrintStream 对象并调用它的 format(Locale, String, Object) 方法。我们使用了美国语言环境(Locale.US)。格式化字符串中的 %s
占位符将被第二个参数中的字符串 "John" 替换。%tD
占位符将被当前日期替换,它使用了一个 %t 开头的日期时间转换说明符。
注意:
%
符号需要用 %%
表示。 format(Locale, String, Object) 方法可用于将格式化的字符串和参数传递给 PrintStream 的 format() 方法,以生成格式化的字符串。为了更好的阅读体验,我们应该在格式化字符串中和占位符之间添加格式说明符,这样可读性更高。