> For the complete documentation index, see [llms.txt](https://www.saladpuk.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.saladpuk.com/beginner-1/csharp101/intermediate/stringbuilder.md).

# 30.StringBuilder เพื่อนคู่ string

💬 ในรอบนี้เราจะมาดูชัดๆในเรื่องของความเป็น **Immutable** ของ string ว่าถ้าเราต่อ string ไปเรื่อยๆมันจะเกิดปัญหาอะไรขึ้นกับโปรแกรมเรา และเราจะแก้ไขปัญหานั้นยังไง ซึ่งก็ไม่เห็นต้องบอกเลยหัวเรื่องก็จั่วอยู่แล้วว่าเป็น **StringBuilder** ไงล่ะ

{% embed url="<https://www.youtube.com/watch?v=U3xy2uZUuiA&list=PLUjAn8nwWnijERZ3HpzBk7NfSrau74_lQ&index=49>" %}

## 🎯 สรุปสั้นๆ

### 👨‍🚀 การต่อ string ที่ไม่ซับซ้อน

{% hint style="danger" %}
**อย่าต่อโดยใช้เครื่องหมาย +**\
เน้นย้ำคำโตๆว่า **อย่างทำ!!** โปรแกรมไม่ได้พังหรอกแต่มันไม่เป็นโค้ดของพวก professional ทำกัน และโปรแกรมของเราจะช้าลงแบบไม่ควรจะเป็น
{% endhint %}

ถ้าเราต้องการต่อ string แบบไม่ได้ซับซ้อนอะไรแนะนำให้ใช้ **Placeholder** หรือไม่ก็ **Interpolation** แทนการใช้เครื่องหมาย + (ถ้าไม่รู้ว่ามันคืออะไรให้กลับไปดูบทก่อนหน้าซะ)

{% content-ref url="/pages/-Lmt\_11lffOoUeiTzEI2" %}
[29.ลงลึกกับ string](/beginner-1/csharp101/intermediate/string.md)
{% endcontent-ref %}

### 👨‍🚀 การต่อ string ที่ซับซ้อน

ให้ใช้คลาส **StringBuilder** เข้ามาช่วย จากตัวอย่างจะเห็นการใช้ CPU และความเร็วที่แตกต่างกันอย่างเห็นได้ชัดเลย (กดๆดูไปเถอะอุตส่าทำมาให้ดู + ไหนๆกดดูแล้วฝากกด subscribe กดไลค์กดแชร์ด้วยเน่อ)
