StringBuffer 与 StringBuilder:主要区别 | AI生成和翻译

Home 2026.01

1. Thread Safety

2. Performance

3. When to Use

StringBuffer:

StringBuilder:

4. Synchronization Details

5. Introduction

6. Memory and Method Behavior

这两个类共享相同的 API 和方法(append, insert, delete, reverse 等),除了 synchronization 之外,功能完全相同。

Code Example

// StringBuilder - faster for single-threaded use
StringBuilder sb = new StringBuilder();
sb.append("Hello");
sb.append(" World");

// StringBuffer - safer for multi-threaded use
StringBuffer sbf = new StringBuffer();
sbf.append("Thread");
sbf.append(" Safe");

Best Practice

默认情况下使用 StringBuilder,除非你明确需要 Thread safety,在这种情况下请使用 StringBuffer 或对 StringBuilder 进行外部 synchronization。


Back

anthropic/claude-4.5-sonnet

Donate