Soci (Soczó Zsolt) szakmai blogja

2006.10.26.

StringBuilder vs. String

Filed under: .NET,CLR,Szakmai élet — Soczó Zsolt @ 17:18

Sokan olvasták, hogy a StringBuilder a nyerő, ha több stringgel kell dolgozni, pl. összefűzni őket. Aztán itt meg is állnak, és már pár string esetén is boldogan izzítják a StringBuildert, és büszkék, hogy ez aztán a szakos kód.

De biztos így van ez?

Nem.

Meglepő módon a pl. a string.Join jóval gyorsabb, mint a StringBuilder.Append? Hogy mi? Sok elemre is? Igen.

Meglepőek néhol az eredmények, érdemes megnézni a cikket.

A szerzőnek abban is igaza van, hogy nagy stringeknél (több k vagy nagyobb) nagyon jó a StringBuilder, de kicsiknél, amik sokkal tipikusabbak, nem feltétlenül.

1 Comment

  1. Hmm, érdekes.
    Mondjuk, én így csinálom ha “ragasztok”:

    StringBuilder sb = new StringBuilder(“”, 4096);

    így (ha tudom, hogy 4096 karakternél kevesebb lesz a Length) nem fog újraallokálni :-) tartok tőle, így más lenne az eredmény :-)

    igazából a struct és class létrehozásának idejében is lehet különbség

    ps: mostanában olvasgatom a blogodat, király :-)

    Comment by agysejt — 2007.01.05. @ 16:35

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

Powered by WordPress