在 Java 中,何时使用 StringBuffer/StringBuilder 而非 String?
- String 类对象不可变,而 StringBuffer 和 StringBuilder 对象可变。
- StringBuffer 是同步的,而 StringBuilder 是不同步的。
- 连接符 "+" 在内部使用 StringBuffer 或 StringBuilder 来实现。
- 如果对象值不会改变,请使用 String 类,因为 String 对象是不可变的。
- 如果对象值可以改变,并且仅从单个线程访问,请使用 StringBuilder,因为 StringBuilder 是不同步的。
- 如果对象值可以改变,并且将由多个线程修改,请使用 StringBuffer,因为 StringBuffer 是同步的。
广告