Fügen Sie eine leere Zeichenfolge vs toString hinzu - warum ist es schlecht?

7

Nach dem Tool PMD ist das folgende eine schlechte Übung:

%Vor%

Warum ist es eine schlechte Sache zu tun?

    
corgrath 02.09.2010, 12:09
quelle

4 Antworten

11
%Vor%

Wird kompiliert zu:

%Vor%

also: "" +123 ist offensichtlich etwas besser! Überprüft mit JAD

%Vor%

BEARBEITEN:

Für nicht konstante Werte:

%Vor%     
stacker 02.09.2010, 12:23
quelle
20

Es ist ineffizient, da es eine unnötige String-Verkettung beinhaltet, also die Erzeugung von ein oder zwei zusätzlichen String -Objekten - obwohl ich glaube, dass das JIT es optimieren kann.

Für mich ist das größere Problem, dass der Code weniger klar ist. Aufruf von toString ist ein Standard-Idiom, das für jeden Java-Entwickler verständlich ist (hoffentlich :-), also sollten Sie dies bevorzugen.

    
Péter Török 02.09.2010 12:13
quelle
6

Es wird zu "" + String.valueOf (yourObject) erweitert und führt somit eine unnötige Verkettung durch. Die Verkettung beinhaltet die Zuweisung einer zusätzlichen Zeichenfolge und eine zusätzliche Kopie des Wertes der Zeichenfolge.

    
jkff 02.09.2010 12:11
quelle
0
%Vor%

Der obige Code erstellt eine temporäre Zeichenfolge, um "" und 123

zu kombinieren     
Dead Programmer 02.09.2010 12:49
quelle

Tags und Links