鉴于toString()下面的两个实现,首选哪一个:
public String toString(){
return "{a:"+ a + ", b:" + b + ", c: " + c +"}";
}
Run Code Online (Sandbox Code Playgroud)
要么
public String toString(){
StringBuilder sb = new StringBuilder(100);
return sb.append("{a:").append(a)
.append(", b:").append(b)
.append(", c:").append(c)
.append("}")
.toString();
}
Run Code Online (Sandbox Code Playgroud)
?
更重要的是,鉴于我们只有3个属性,它可能没有什么区别,但你会在什么时候从+concat 切换到 StringBuilder?
我可以通过互联网和Sun Java获得更多.但是需要在一个例子的帮助下获得明显的差异?
StringBuffer 要么 StringBuilder
什么是差异,什么时候更喜欢考虑响应时间.
在我的项目中有一些使用StringBuffer对象的代码片段,其中一小部分如下
StringBuffer str = new StringBuffer();
str.append("new " + "String()");
Run Code Online (Sandbox Code Playgroud)
所以我对使用append方法和+运算符感到困惑.
即以下代码可以写为
str.append("new ").append("String()");
Run Code Online (Sandbox Code Playgroud)
那么两条线路是否相同?(功能上是,但是)或者是否有任何特殊用途?即性能或可读性或???
谢谢.