StringBuilder和StringBuffer有什么区别?

4

StringBuilder 速度稍快。 - miku
2个回答

5

StringBuffer中的一些方法是同步的,而StringBuilder不是线程安全的 - 但速度更快。

原则上,使用StringBuilder,除非您有一个场景,其中StringBuilder由多个线程使用(这将是非常罕见的情况)。


4
从StringBuffer的javadoc中摘录:
自JDK 5版本发布以来,这个类已经被一个等效的类替代,该类仅用于单个线程,即{@link StringBuilder}。通常应该使用StringBuilder类而不是StringBuffer类,因为它支持所有相同的操作,但速度更快,因为它不执行同步。
基本上,StringBuffer可以同时被多个线程使用,因为它是同步的,但这也使它比只能被一个线程使用的StringBuilder慢一些。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接