如何清除或清空StringBuilder?

这个问题在这里已经有了答案:

  • 循环8应答后清除字符串缓冲区/构建器

  • 两种工作方式:

  • 使用stringBuilderObj.setLength(0)
  • new StringBuilder()分配一个新的而不是清除缓冲区。

  • 基本上有两种选择,使用setLength(0)来重置StringBuilder或在每次迭代中创建一个新的。 根据使用情况,两者都有优点和缺点。

    如果您事先知道StringBuilder的预期容量,那么每次创建一个新的容量应该与设置新的容量一样快。 它也将帮助垃圾收集器,因为每个StringBuilder将会相对较短,并且gc会针对此进行优化。

    当你不知道容量时,重用相同的StringBuilder可能会更快。 每次在追加时超过容量时,都必须分配新的后备阵列,并且必须复制先前的内容。 通过重用相同的StringBuilder,经过一些迭代后它将达到所需容量,此后不会有任何复制。


    delete不是太复杂:

    myStringBuilder.delete(0, myStringBuilder.length());
    

    你也可以这样做:

    myStringBuilder.setLength(0);
    
    链接地址: http://www.djcxy.com/p/12549.html

    上一篇: How can I clear or empty a StringBuilder?

    下一篇: What is the difference between JDK and JRE?