c#:StringBuilder |
//
- Définitions et utilisations
- Un objet c#:StringBuilder est pas une chaîne mais plutôt un objet auxiliaire utilisé pour la manipulation de caractères.
- c#:StringBuilder contient un tampon , typiquement initialisée avec une chaîne , mais généralement plus grande que cette chaîne. Ce tampon peut être manipulé en place sans créer une nouvelle chaîne de caractères : Vous pouvez insérer , ajouter , supprimer et remplacer les caractères .
- Lorsque vous avez terminé de manipuler les caractères, utilisez la méthode ToString de StringBuilder pour extraire la chaîne fini de lui.
- StringBuilder est une classe C # qui vient avec un paquet de ses propres fonctions de manipulation de chaîne .
- Pour le stockage et la manipulation d’objets à cordes , le langage C # offre une classe StringBuilder mutable . Contrairement à d’autres objets de chaîne , la variable définie avec cette classe StringBuilder lorsque modifié détient la valeur modifiée pour lui-même plutôt que de créer un nouvel objet. Cela signifie que vous êtes à la fois économiser la mémoire du système et exécuter à meilleur de temps .
- Le probleme se posant avec les chaînes en c# est qu’elle ne sont pas modifiables. Le type StringBuilder permet de creer des chaînes modifiables.
- Pour utilisez des StringBuilder, vous devez ajouter using System.Text; au debut de votre code
source. - La classe StringBuilder se trouve dans l’espace de noms System.Text. Pour éviter d’avoir à fournir un nom de type complet dans votre code, vous pouvez importer l’espace de noms System.Text :
- Une chaîne est immuable , ce qui signifie qu’une chaîne ne peut pas être modifié une fois créé .
- Par exemple , la nouvelle chaîne » Bonjour mon site apcpedagogie.com » occupera un espace mémoire sur le tas .
- Maintenant , en changeant la chaîne initiale » Bonjour mon site apcpedagogie.com » à » Bonjour mon site apcpedagogie.com mon site de formation » va créer un nouvel objet de chaîne sur le tas de mémoire au lieu de modifier la chaîne initiale à la même adresse de mémoire .
- Ce comportement va entraver la performance si la même chaîne change plusieurs fois par le remplacement , l’ajout , la suppression ou l’insertion de nouvelles chaînes dans la chaîne initiale .
- Vous ne devriez pas utiliser cette classe lorsque vous avez besoin d’ajouter seulement deux String ensemble. Il vaut mieux utiliser StringBuilder pour concaténer plus de nombre de chaînes ( au moins quatre) .
Vous ne devriez pas utiliser cette classe C # seulement pour le remplacement ou le déplacement d’une partie de la chaîne . - Les fonction StringBuilder.
- Il est utilisé pour ajouter le texte spécifié à un objet de chaîne déjà existante .
- Le Append(String) méthode modifie l’instance existante de la classe ; elle ne retourne pas une nouvelle instance de la classe.
- Pour cette raison, vous pouvez appeler une méthode ou propriété sur la référence existante et il est inutile d’assigner la valeur de retour à un StringBuilder de l’objet, comme l’illustre l’exemple suivant:
- AppendLine ajoute des cordes avec un saut de ligne.
- Vous pouvez utiliser la méthode AppendLine pour insérer une nouvelle ligne dans une chaîne.
- Supprime tous les caractères du courant StringBuilder instance.
- Replace() est utilisé pour remplacer un texte ou des caractères dans une chaîne avec un autre texte .
- Alors, pourquoi Remplacer la méthode de chaîne StringBuilder est plus efficace que de la classe string ?
- Bien que les deux fonctionnent de manière similaire mais en cas de StringBuilder , contrairement à remplacer de string , aucun nouvel objet modifié créé . Au contraire, il modifie l’objet original.
- La méthode Insert ajoute une chaîne ou un objet à une position spécifiée dans l’objet StringBuilder actuel.
- Cette méthode est utilisée pour insérer une variété de types de données dans un objet StringBuilder en fonction du type de surcharge utilisé .
- La méthode Insert prend deux paramètres : zéro sur indices dont la valeur doit être inséré et la valeur elle-même.
- L’exemple suivant illustre l’utilisation de la méthode Insert
- Vous pouvez insérer une chaîne dans un constructeur de chaîne en spécifiant la position de départ et le texte que vous avez besoin d’insérer.
- En utilisant Append (), vous ne pouvez insérer à la fin de l’objet chaîne de constructeur.
- Ainsi, la méthode d’insertion est fourni ici pour insérer en toute position de l’objet chaîne de constructeur.
Définitions
Utilisations
ghjgjh
using System; using System.Text;
2.1. Append()
bool flag = false; System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append("The value of the flag is ").Append(flag).Append("."); Console.WriteLine(sb.ToString()); // L'exemple affiche la sortie suivante: //La valeur du flag est faux .
2.2. AppendLine()
using System; using System.Text; class Program { static void Main() { // Utiliser AppendLine. StringBuilder var_chaine = new StringBuilder(); var_chaine.AppendLine("Un"); var_chaine.AppendLine(); var_chaine.AppendLine("Deux").AppendLine("Trois"); // Affichage. Console.Write(var_chaine); // AppendLine utilise \ r \ n séquences. Console.WriteLine(var_chaine.ToString().Contains("\r\n")); } } Résultat Un Deux Trois True
2.3. Clear()
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace clear_stringbuilder { class Program { static void Main(string[] args) { StringBuilder sb = new StringBuilder("Ceci est une chaîne."); // de StringBuilder("Ceci est une chaîne."); Console.WriteLine("{0} ({1} caractères)", sb.ToString(), sb.Length); sb.Clear(); Console.WriteLine("{0} ({1} caractères)", sb.ToString(), sb.Length); sb.Append("Ceci est une seconde chaîne."); Console.WriteLine("{0} ({1} caractères)", sb.ToString(), sb.Length); Console.ReadLine(); } } } ////////////////////////////////////////// // L'exemple affiche la sortie suivante: // Ceci est une chaîne. (20 caractères) // (0 caractères) // Ceci est une seconde chaîne. (28 caractères)
2.4. Replace()
2.5. Insert()
StringBuilder content = new StringBuilder("apcpedagogiecom"); content.Insert(11, "."); Console.WriteLine(content); /////////////// apcpedagogie.com
Contenu du chapitre :Les chaines de caractères
1.Les chaînes de caractères
3.QCM
4.Travaux pratiques
Sommaire du cours c#