gpt4 book ai didi

java - StringBuilder 与 Java 中 toString() 中的字符串连接

转载 作者:行者123 更新时间:2023-12-01 18:00:27 24 4
gpt4 key购买 nike

鉴于下面的 2 个 toString() 实现,首选哪一个:

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

public String toString(){
StringBuilder sb = new StringBuilder(100);
return sb.append("{a:").append(a)
.append(", b:").append(b)
.append(", c:").append(c)
.append("}")
.toString();
}

更重要的是,考虑到我们只有 3 个属性,这可能没有什么区别,但是什么时候您会从 + concat 切换到 StringBuilder

最佳答案

版本 1 更可取,因为它更短且 the compiler will in fact turn it into version 2 - 没有任何性能差异。

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?

当您在循环中连接时 - 通常是编译器无法自行替换 StringBuilder 时。

关于java - StringBuilder 与 Java 中 toString() 中的字符串连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60645024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com