以下代码中的LINE_WIDTH是什么?

时间:2015-02-12 20:51:05

标签: java stringbuilder effective-java

这个代码来自第51项中的有效java:注意字符串连接的性能

    public String statement() {
StringBuilder b = new StringBuilder(numItems() * LINE_WIDTH);
for (int i = 0; i < numItems(); i++)
b.append(lineForItem(i));
return b.toString();
}

任何人都可以向我解释什么是LINE_WIDTH?它的价值是什么?在这种情况下

非常感谢

1 个答案:

答案 0 :(得分:1)

但是,我不知道所引用的代码,而是阅读我认为的代码:

  • numItems()返回将放入字符串的项目数,
  • LINE_WIDTH,是一行的近似长度(或可能是精确的),它将附加到每个项目的字符串中。

代码的目的是在构建字符串之前预留足够的空间,以防止在构建字符串的过程中必须重新分配新空间,从而在构建字符串的过程中节省时间。