Wha特别使用StringBuilder内嵌的StringBuffer

可能重复:
Java中的StringBuilder和StringBuffer

我想知道StringBuilder和StringBuffer之间的区别。 在StringBuffer中它会自动分配16个字符。 当我们添加一个字符串“hello”时,它的容量会增加到21.是否有人能够澄清我的疑惑?


你看过Javadocs吗?

从http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html:

该类提供了与StringBuffer兼容的API,但不保证同步。 此类用于在单个线程正在使用字符串缓冲区的位置(如通常情况下)用作StringBuffer的嵌入式替换。 在可能的情况下,建议将此类优先用于StringBuffer,因为在大多数实现中它会更快。


主要区别是,StringBuffer是线程安全的(它的所有方法都是同步的),但StringBuilder不是。 但是,如果您不需要线程安全性,则StringBuilder比StringBuffer.Use StringBuilder快。


StringBuffer是线程安全的(即,它的方法是同步的)。 但是,这并不是每个应用程序都需要的,它会使代码比其他方式慢。 StringBuilder基本上是没有同步的StringBuffer,因此速度更快一些。

链接地址: http://www.djcxy.com/p/72343.html

上一篇: Wha's special in using StringBuilder insted of StringBuffer

下一篇: StringBuffer vs StringBuilder