如果只有一个字符串,则:
String foo = "123456";
是最快的。您会注意到该String.format
行已"%s%"
在其中声明,因此我看不到讲师怎么可能认为这更快。另外,您还有一个方法调用。
但是,如果您要在一段时间内构建字符串(例如在for循环中),则需要使用StringBuilder。如果您只是使用它,+=
那么每次+=
调用该行时都在构建一个全新的字符串。StringBuilder更快,因为它拥有一个缓冲区,并在每次调用时追加到该缓冲区append
。
是否有“最快的方式”在Java中构造字符串?
如果只有一个字符串,则:
String foo = "123456";
是最快的。您会注意到该String.format
行已"%s%"
在其中声明,因此我看不到讲师怎么可能认为这更快。另外,您还有一个方法调用。
但是,如果您要在一段时间内构建字符串(例如在for循环中),则需要使用StringBuilder。如果您只是使用它,+=
那么每次+=
调用该行时都在构建一个全新的字符串。StringBuilder更快,因为它拥有一个缓冲区,并在每次调用时追加到该缓冲区append
。