Question

Lors de la concaténation de chaînes d'une chaîne existante dans le pool interne, une nouvelle chaîne est-elle entrée dans le pool interne ou une référence est-elle renvoyée à la chaîne existante dans le pool interne ?D'après cet article, String.Concat et StringBuilder inséreront de nouvelles instances de chaîne dans le pool interne ?

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

Quelqu'un peut-il expliquer comment fonctionne la concaténation avec le pool interne ?

Était-ce utile?

La solution

Si vous créez de nouvelles chaînes, elles ne seront pas automatiquement placées dans le pool interne, sauf si vous concaténez des constantes au moment de la compilation, auquel cas le compilateur créera un résultat de chaîne et l'interne dans le cadre du processus JIT.

Autres conseils

Vous pouvez voir si une chaîne a été internée en appelant String.IsInterned.L'appel renverra une nouvelle chaîne qui est soit une référence à une chaîne interne égale à la chaîne qui a été passée en argument, soit null si la chaîne n'a pas été internée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top