Maison >développement back-end >C++ >Quel est le moyen le plus efficace de créer une chaîne d'onglets en C# ?
Répétition efficace de caractères en C#
En C#, il existe différentes approches pour générer une chaîne composée uniquement de caractères de tabulation ("t") . Cet article examine trois méthodes couramment utilisées et propose une solution alternative alliant simplicité et performances.
LINQ et StringBuilder vs. String Concatenation
Les approches LINQ et StringBuilder fournissent des et des solutions flexibles. LINQ utilise les méthodes Repeat et Aggregate, tandis que StringBuilder permet une manipulation incrémentielle des chaînes. Cependant, ces deux méthodes impliquent des opérations plus complexes que la simple concaténation de chaînes.
private string Tabs(uint numTabs) { IEnumerable<string> tabs = Enumerable.Repeat("\t", (int)numTabs); return (numTabs > 0) ? tabs.Aggregate((sum, next) => sum + next) : ""; } private string Tabs(uint numTabs) { StringBuilder sb = new StringBuilder(); for (uint i = 0; i < numTabs; i++) sb.Append("\t"); return sb.ToString(); }
Construction directe de chaînes
L'approche de concaténation directe de chaînes, comme indiqué ci-dessous, est simple et offre les meilleures performances parmi les trois méthodes.
private string Tabs(uint numTabs) { string output = ""; for (uint i = 0; i < numTabs; i++) { output += '\t'; } return output; }
Solution optimale : chaîne basée sur un constructeur Création
Pour un maximum de simplicité et de performances, pensez à utiliser la solution basée sur un constructeur :
static string Tabs(int n) { return new string('\t', n); }
Cette méthode initialise un nouvel objet chaîne directement avec le caractère spécifié répété le nombre de fois donné fois, ce qui donne la solution la plus efficace pour générer des chaînes à tabulations.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!