Il est bon de préciser quelques trucs :
String x = "une " + "chaine" + ...;
n'est pas couteux, le compilateur (intelligent) le transformera en Par contre
String x = "une " + variable1 + variable2 + ...;
sera je crois transformé par le compilateur en
Strign x = new StringBuffer().append("une").append(variable1).append(variable2).toString();
Enfin il est primordiale de définir une taille initiale appropriée.
Perso j'evite les :
1 2 3 4 5
|
new StringBuffer(); // -> 16 caracteres
new StringBuffer(0); // -> !!!!!!!!!!!!!
new StringBuffer(1); // -> !!!!!!!!!!!!!
new StringBuffer("ma chaine"); // -> "ma chaine".length() + 16 caracteres |
Tout ceci pour éviter les multiples réallocations mémoires couteuses.
Partager