Frage

Wird bei der Zeichenfolgenverkettung einer vorhandenen Zeichenfolge im Intern-Pool eine neue Zeichenfolge in den Intern-Pool eingegeben oder wird ein Verweis auf die vorhandene Zeichenfolge im Intern-Pool zurückgegeben?Werden String.Concat und StringBuilder laut diesem Artikel neue String-Instanzen in den internen Pool einfügen?

http://community.bartdesmet.net/blogs/bart/archive/2006/09/27/4472.aspx

Kann jemand erklären, wie die Verkettung mit dem Praktikantenpool funktioniert?

War es hilfreich?

Lösung

Wenn Sie neue Zeichenfolgen erstellen, werden diese nicht automatisch in den internen Pool aufgenommen, es sei denn, Sie verketten Konstanten zur Kompilierungszeit. In diesem Fall erstellt der Compiler ein Zeichenfolgenergebnis und intern dieses als Teil des JIT-Prozesses.

Andere Tipps

Ob ein String interniert wurde, können Sie per Aufruf erkennen String.IsInterned.Der Aufruf gibt eine neue Zeichenfolge zurück, die entweder eine Referenz auf eine interne Zeichenfolge ist, die der Zeichenfolge entspricht, die als Argument übergeben wurde, oder null wenn die Zeichenfolge nicht interniert wurde.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top