📘 Lesson · Lesson 37
String vs StringBuffer vs StringBuilder
String vs StringBuffer vs StringBuilder
Three String Types
String is immutable (cannot change). StringBuffer and StringBuilder are mutable (can change) — better for many edits.
Comparison
| Type | Mutable | Thread-safe | Speed |
|---|---|---|---|
| String | No | - | - |
| StringBuffer | Yes | Yes | slower |
| StringBuilder | Yes | No | fastest |
Example
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World"); // modifies same object
System.out.println(sb); // Hello WorldHello World
Summary
- String = immutable; StringBuffer = mutable + thread-safe; StringBuilder = mutable + fastest.
- Use StringBuilder for many string edits in single-threaded code.
तीन String Types
String immutable है (बदल नहीं सकते)। StringBuffer और StringBuilder mutable हैं (बदल सकते हैं) — बहुत edits के लिए बेहतर।
तुलना
| Type | Mutable | Thread-safe | Speed |
|---|---|---|---|
| String | नहीं | - | - |
| StringBuffer | हाँ | हाँ | धीमा |
| StringBuilder | हाँ | नहीं | सबसे तेज़ |
Example
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World"); // same object modify करता है
System.out.println(sb); // Hello WorldHello World
सारांश
- String = immutable; StringBuffer = mutable + thread-safe; StringBuilder = mutable + सबसे तेज़।
- Single-threaded code में बहुत string edits को StringBuilder use करें।