ใช้คลาส StringBuilder ในการต่อ String บน .NET

29 March 2013 11:03 PM Programming , ,

3-30-2013 2-54-41 AM
โดยปกติแล้วการต่อข้อความในตัวแปร String  ใช้ในกรณีที่เราต้องการเก็บข้อความที่มีความยาว เช่นชุดคำสั่ง SQL, Parameter, ฯลฯ โดยปกติในภาษา Basic ใช้เครื่องหมาย & ส่วนในภาษา C# ใช้เครื่องหมาย + เป็นวิธีการที่นิยมใช้กันโดยทั่วไป ซึ่งควรจะเปลี่ยนไปใช้คลาส StringBuilder ต่อ String แทนครับ โดยจะเปรียบเทียบผลลัพธ์มาให้ดู

ในที่นี้ผมจะใช้คลาส Stringbuilder ในการต่อ String และ Stopwatch ในการจับเวลา เพื่อให้เห็นถึงความแตกของความเร็วในการต่อ String ของแต่ละคำสั่งครับ ซึ่งเราสามารถเรียกใช้ Stringbuilder โดยการ “Import System.Text” บน VB หรือ “using System.Text;” ใน VC# ได้ครับ แต่ในตัวอย่าง Code ของผมเป็น VC# ตัวอย่าง Code ด้านล่างเลยครับ

อธิบาย Code นิดหน่อยว่าผมเขียนด้วยภาษา C# ให้แสดงผลออกมาทาง Console หรือ Dos นั้นเอง โดยจะจับเวลาในการวนลูปการต่อ String ของทั้ง 2 วิธีการ แล้วนำเวลาจับได้มาแสดงผลเปรียบเทียบให้เห็นถึงความเร็ว ซึ่งอันไหนใช้เวลามากแปลว่าประมวลผลช้ากว่า ซึ่งเมื่อ Run โปรแกรม Output ที่ออกมาแสดงการจับเวลาความเร็วตามรูปด้านล่างครับ
Capture
เปรียบเทียบความเร็วคงจะเห็นกันได้อย่างชัดเจนนะครับ ว่า StringBuilder เร็วกกว่าขนาดไหน หลังว่าคงจะมีประโยชน์ในการเอาไปใช้งานนะครับ ใครมีคำถามอะไรสอบถามได้เลยนะครับ