Supposons que j'ai un constructeur de chaînes en C # qui fait ceci:
StringBuilder sb = new StringBuilder();
string cat = "cat";
sb.Append("the ").Append(cat).(" in the hat");
string s = sb.ToString();
serait-ce aussi efficace ou plus efficace que d'avoir:
string cat = "cat";
string s = String.Format("The {0} in the hat", cat);
Si oui, pourquoi?
ÉDITER
Après quelques réponses intéressantes, j'ai réalisé que j'aurais probablement dû être un peu plus clair dans ce que je demandais. Je n'ai pas tellement demandé ce qui était le plus rapide pour concaténer une chaîne, mais ce qui est plus rapide pour injecter une chaîne dans une autre.
Dans les deux cas ci-dessus, je souhaite injecter une ou plusieurs chaînes au milieu d'une chaîne de modèle prédéfinie.
Désolé pour la confusion
string s = "The "+cat+" in the hat";
- dessus pourrait être le plus rapide à moins qu'il ne soit utilisé dans une boucle, auquel cas le plus rapide sera avec un StringBuilder
initialisé en dehors de la boucle.