StringBuilder vs String concatenation in toString() in Java

后端 未结 18 2195
北恋
北恋 2020-11-21 04:18

Given the 2 toString() implementations below, which one is preferred:

public String toString(){
    return \"{a:\"+ a + \", b:\" + b + \", c: \"         


        
18条回答
  •  迷失自我
    2020-11-21 05:01

    Version 1 is preferable because it is shorter and the compiler will in fact turn it into version 2 - no performance difference whatsoever.

    More importantly given we have only 3 properties it might not make a difference, but at what point do you switch from concat to builder?

    At the point where you're concatenating in a loop - that's usually when the compiler can't substitute StringBuilder by itself.

提交回复
热议问题