Inefficient use StringBuffer or StringBuilder[Optimization|clean-up] {Package: java. * without Swing} (original) (raw)

Otávio Gonçalves de Santana otaviojava at java.net
Fri Jun 7 13:25:49 UTC 2013


The string addition in the parameter will create another string buffer, append all the components, then convert that to a string so the you can be appended to your string buffer.

So I replace this:

sb.append(" xxx: [" + getXXX() + "]\n");

for this:

sb.append(" xxx: [").append(getXXX()).append("]\n");

The classes are:

javax.imageio.plugins.jpeg.JPEGQTable javax.management.openmbean.ArrayType javax.naming.BinaryRefAddr javax.naming.directory.BasicAttribute javax.naming.NameImpl javax.sound.sampled.AudioFileFormat

The diff bellow:

diff --git a/src/share/classes/javax/management/openmbean/ArrayType.java b/src/share/classes/javax/management/openmbean/ArrayType.java --- a/src/share/classes/javax/management/openmbean/ArrayType.java +++ b/src/share/classes/javax/management/openmbean/ArrayType.java @@ -459,7 +459,7 @@ isPrimitiveArray = at.isPrimitiveArray(); } StringBuilder result =

diff --git a/src/share/classes/javax/sound/sampled/AudioFileFormat.java b/src/share/classes/javax/sound/sampled/AudioFileFormat.java --- a/src/share/classes/javax/sound/sampled/AudioFileFormat.java +++ b/src/share/classes/javax/sound/sampled/AudioFileFormat.java @@ -288,19 +288,20 @@

     //$$fb2002-11-01: fix for 4672864: AudioFileFormat.toString()

throws unexpected NullPointerException if (type != null) {

file");

(.").append(type.getExtension()).append(") file"); + } else { buf.append("unknown file format"); }

     if (byteLength != AudioSystem.NOT_SPECIFIED) {

diff --git a/src/share/classes/javax/naming/directory/BasicAttribute.java b/src/share/classes/javax/naming/directory/BasicAttribute.java --- a/src/share/classes/javax/naming/directory/BasicAttribute.java +++ b/src/share/classes/javax/naming/directory/BasicAttribute.java @@ -211,7 +211,7 @@ * @return The non-null string representation of this attribute. */ public String toString() {

diff --git a/src/share/classes/javax/naming/BinaryRefAddr.java b/src/share/classes/javax/naming/BinaryRefAddr.java --- a/src/share/classes/javax/naming/BinaryRefAddr.java +++ b/src/share/classes/javax/naming/BinaryRefAddr.java @@ -169,7 +169,7 @@

     str.append("AddressContents: ");
     for (int i = 0; i<buf.length && i < 32; i++) {

diff --git a/src/share/classes/javax/imageio/plugins/jpeg/JPEGQTable.java b/src/share/classes/javax/imageio/plugins/jpeg/JPEGQTable.java --- a/src/share/classes/javax/imageio/plugins/jpeg/JPEGQTable.java +++ b/src/share/classes/javax/imageio/plugins/jpeg/JPEGQTable.java @@ -197,7 +197,7 @@ */ public String toString() { String ls = System.getProperty("line.separator", "\n");

diff --git a/src/share/classes/javax/naming/NameImpl.java b/src/share/classes/javax/naming/NameImpl.java --- a/src/share/classes/javax/naming/NameImpl.java +++ b/src/share/classes/javax/naming/NameImpl.java @@ -170,7 +170,7 @@ endQuote = one ? syntaxEndQuote1 : syntaxEndQuote2;

             i += syntaxTypevalSeparator.length();

back

// add back

             // consume string until matching quote
             for (i += beginQuote.length();

-- Atenciosamente.

Otávio Gonçalves de Santana

blog: http://otaviosantana.blogspot.com.br/ twitter: http://twitter.com/otaviojava site: http://www.otaviojava.com.br (11) 98255-3513



More information about the core-libs-dev mailing list