Freitag, August 31, 2007

Strings in .Net

Strings sind in .Net Verweistypen, da man sie aber relativ häufig braucht, sind sie wie ein Werttyp zu programmieren (kein new).

Strings sind unveränderbar, dass heisst wurde einmal ein String angelegt und ihm etwas zugewiesen, wird bei jeder Änderung ein neuer String im Speicher angelegt und der alte Inhalt dort hin kopiert. Wird also viel Stringmanipulation gebraucht, sollte die Klasse StringBuilder verwendet werden.

Sind zwei oder mehrere Strings mit dem gleichen Wert im Programm, kommt es auch häufig vor, das die .NET CLR das merkt und alle Verweise auf den gleichen Speicherbereich legt.