2016-03-25 24 views
4

Warum schlägt NetBeans vor, dass ich StringBuffer/StringBuilder durch String ersetze?StringBuffer/StringBuilder durch String ersetzen

Es zeigt mir eine Warnmeldung, wenn ich schreibe:

StringBuilder demo = new StringBuilder("Hello"); 
+1

Können Sie etwas mehr Code teilen - fügen Sie tatsächlich irgendetwas zu 'demo' hinzu? –

+0

@MickMnemonic, Wenn ich eine StringBuffer/StringBuilder spezifische Methoden verwenden, verschwindet die Warnung. Ich war nur neugierig, wieso es darauf hindeutet, bevor ich irgendwas mit * demo * mache. –

Antwort

3

Statt

StringBuilder demo = new StringBuilder("Hello"); 

des Schreibens ist dies einfacher und Sie müssen nicht einen String dafür vergeben:

String demo = "Hello"; 

Wenn Sie eine Methode verwenden, die bedeutet, dass es ein StringBuilder sein muss, sollte die Warnung weggehen.

z.B.

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

Ersetzen String/String von String

Der Hinweis finden und Angebot Instanzen von String oder Stringbuilder zu ersetzen, die sind Methoden unter Verwendung gewöhnlicher String zugegriffen und werden nie aus dem Methode übergeben oder einer anderen Variablen zugewiesen. Solche Daten in StringBuffer/Builder zu behalten ist sinnlos, und String wäre effizienter.

Von Netbeans wiki.