Usare StringBuilder in C#



Quando in C# si ha bisogno di concatenare stringhe, la miglior cosa è l’utilizzo della classe StringBuilder.

Le stringhe in C#, infatti, non possono essere modificate perché sono immutabili.
Quando le si va a modificare, quindi viene creato un nuovo oggetto stringa e sostituito al precedente.

Questo processo prende un notevole spazio in termini di tempo.

Per ovviare a questo si può usare, appunto, la classe StringBuilder.

Vediamo un esempio di come si farebbe un semplice processo usanto String:

static void Main(string[] args)
{
string str = "";
for (int j = 0; j < 10000; j++)
{
str += Convert.ToString(j);
}
Console.WriteLine(str);
}

Possiamo notare come il processo prenda qualche secondo prima di emettere l’output.

Ora invece vediamo lo stesso meccanismo, ma utilizzando StringBuilder:

static void Main(string[] args)
{
StringBuilder sb = new StringBuilder();
for (int j = 0; j < 10000; j++)
{
sb.Append(j);
}
Console.WriteLine(sb.ToString());
}

Come possiamo notare se mandiamo in esecuzione, la velocità del programma è notevolmente maggiore e l’output esce istantaneamente.

Ovviamente questo è solamente un esempio, se applicato a grande applicazioni StringBuilder può dare benefici davvero enormi.

Annunci sponsorizzati:
Condividi su Facebook Condividi su Twitter!
Pinterest