用String替代StringBuffer/StringBuilder

4

为什么NetBeans建议我用String来替换StringBuffer / StringBuilder

当我写以下代码时,它会显示警告信息:

StringBuilder demo = new StringBuilder("Hello");

1
你能分享更多的代码吗?你是否真的将任何内容附加到“demo”中? - Mick Mnemonic
@MickMnemonic,如果我使用任何StringBuffer/StringBuilder特定的方法,警告就会消失。我只是好奇为什么在我对demo做任何操作之前它会建议这样做。 - Zehafta Tekea
2个回答

5

不要写

StringBuilder demo = new StringBuilder("Hello");

这更简单,您不需要为它分配一个StringBuilder:

这种方法更加简单,而且您不需要为其分配StringBuilder:

String demo = "Hello";

如果您使用了需要使用StringBuilder的方法,该警告将会消失。

例如:

StringBuilder demo = new StringBuilder("Hello");
demo.append(" World ");
demo.append(128);

3

使用String替换StringBuffer/StringBuilder

此提示将查找并提供替换StringBuffer或StringBuilder实例的建议,这些实例使用普通的String方法进行访问,并且从未传递到方法之外或分配给另一个变量。保留这样的数据在StringBuffer/Builder中是毫无意义的,而String会更加高效。

来自netbeans wiki


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接