csharp / beginner
Snippet
Reduzierung von Speicherallokationen in Schleifen
Reguläre Strings in C# sind unveränderlich. Die Verwendung von StringBuilder ist für die Performance viel effizienter, wenn viele Strings in einer Schleife verkettet werden.
snippet.cs
csharp
1
2
3
4
5
6
7
using System.Text;var builder = new StringBuilder();for (int i = 0; i < 100; i++) {builder.Append("Step ").Append(i).Append("; ");}string finalPath = builder.ToString();
Erklärung
1
new StringBuilder()
Erstellt einen einzelnen veränderbaren Puffer, der erweitert werden kann, ohne neue Objekte zu erstellen.
2
builder.Append(...)
Ändert den vorhandenen Puffer, anstatt einen neuen String im Speicher zu allozieren.