51 Tipps für schnelle Apps

51.1 Stringmanipulationen mit StringBuilder

Strings sind innerhalb von .NET unveränderlich, damit sogenannte Buffer Overruns, wie in C/C++, nicht möglich sein können. Als Konsequenz dieser Maßnahme wird bei jeder Stringänderung intern ein neues Stringobjekt erstellt, das den manipulierten String enthält. Das alte Objekt wird nicht mehr benötigt und bei der nächsten Garbage Collection freigegeben.

Werden Stringmanipulationen mehrmals durchgeführt, ergeben sich daraus viele temporäre Objekte und eine erhöhte Ausführungszeit, da für jede Manipulation der String kopiert werden muss.

Für solche Szenarien eignet sich die Klasse StringBuilder im Namensraum System.Text, die die Änderungen in einem Array durchführt. Neben der ...

Get Windows Phone 8 now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.