Kategoria: C# Dodane przez marcin90

Jakie są różnice pomiędzy String a StringBuilder?

1 odpowiedź

1 0 Dodane 10-06-2018 przez marcin90

Każdy obiekt typu String jest niezmienny. Oznacza to, że podczas edycji obiektu typu String, tworzony jest nowy obiekt wraz z uwzględnionymi zmianami a stary obiekt jest usuwany z pamięci. Z racji tego, że String jest typem referencyjnym, po edycji obiektu na stosie zmieniana jest referencja do obiektu utworzonego na stercie.

W przypadku pętli liczącej tysiące bądź setki tysięcy powtórzeń taka operacja przestaje być wydajna.

Wartość typu StringBuilder może być zmieniana dlatego właśnie ten typ powinien być używany w przypadku częstej zmiany wartości ciągu tekstowego. Dzięki temu operacje na ciągu tekstowym wykonywane będą szybciej i z większą wydajnością.


dependency 13-08-2018 01:48
brakuje mi tutaj informacji czym jest StringBuilder. klasa, struktura, typ prosty...?

Dodaj swoją wersję odpowiedzi

Dodajesz odpowiedź jako gość. Zaloguj się się by uzyskać dostęp do rankingu oraz powiadomień.