我正在学习 Java 中的格式化,并且一直在使用 printf 和 format 方法。对我来说,这些行为似乎完全相同。
有什么理由我应该使用一个而不是另一个?
一个被认为是更新的和/或更好的作为标准使用,如果是,为什么?
您使用它们的情况可能会有所不同;如果要打印文本,通常更容易使用printf()
. 如果您想对字符串做其他事情(例如将其放入图形元素或记录器中),那么您将使用String.format()
.
PrintStream#printf(...)
方法实际上委托给方法PrintStream#format(...)
。所以不,应该没有区别。
编辑:如果您在谈论String.format(...)
,这将以完全相同的方式执行格式化;不同之处在于它返回格式化String
而不是将其写入流。