我有一系列 StrBuf 对象,想知道将它们连接在一起的最有效方法。
有add()
方法,但文档说,“将 x.toStr 添加到此缓冲区的末尾”。如果我一遍又一遍地这样做,我想那StrBuf.toStr()
不是那么高效。
(我知道真正的答案是只使用一个 StrBuf,但在这里请幽默!)
干杯。
更新:
查看 Java 源代码,引擎盖下StrBuf
使用了一个 Java StringBuilder
,它使用一个 char 数组作为它的内部缓冲区。所以@Adrian
,是的,拥有一个大的初始缓冲区很重要。
就StrBuf.toStr()
目前而言,使用Arrays.copyOfRange()
- 创建一个新的 Java 字符串是合理的,但鉴于有一个append(StringBuffer sb)
方法,这是不必要的。