何时使用字符串concat

时间:2014-12-06 06:59:01

标签: java string

我已经阅读了很多关于+,stringbuilderappend和concat的文章。但是,如果我只有一个连接来做什么是最好的选择呢?

  1. str1 + str2
  2. 使用字符串构建器
  3. 使用字符串concat
  4. 我只在涉及2个字符串的情况下寻找解释。

    当涉及2个字符串时,String concat O(n)的复杂性,其中n是最长字符串的长度?

1 个答案:

答案 0 :(得分:1)

如果您只是进行单个连接,请使用str1 + str2。这很容易阅读,并且将由编译器转换为字符串concat,如果你没有经历循环或其他什么,这是完全正常的。事实上,如果你只是一次连接字符串,它比使用StringBuilder更快。

如果您没有循环,请参阅http://blog.codinghorror.com/the-sad-tragedy-of-micro-optimization-theater/,了解为什么不应该使用字符串生成器。

  

当涉及2个字符串时,String concat O(n)的复杂性,其中n是最长字符串的长度?

你可以这么说。我会说它是O(n),其中n是两个字符串的组合长度,但由于最短的字符串不能定义为比最长的字符串大一个数量级然后它全部出来同样的。