StringBuffer和StringBuilder之间的区别
这个问题在这里已经有了答案:
正如他们的javadoc(http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuffer.html和http://docs.oracle.com/javase/7/docs/api/ java / lang / StringBuilder.html),StringBuffer和StringBuilder提供者一样的操作集合。 它们之间的唯一区别是StringBuffer中的操作是同步的,而StringBuilder中的操作则不是。
由于StringBuffer中的操作是同步的,因此StringBuffer是线程安全的,这意味着多个线程可以安全地在同一个StringBuffer上运行。 相反,StringBuilder中的操作不同步。 如果多个线程需要在同一个StringBuffer上操作,则需要手动同步这些线程(或使用StringBuffer)。
同步需要线程获取锁。 因为同步方法执行此额外操作,所以比非同步方法慢。
总之,如果你只是想构造一个字符串,并且它不涉及多个线程,那么最好使用StringBuilder而不是StringBuffer。
链接地址: http://www.djcxy.com/p/72347.html上一篇: Differences between StringBuffer and StringBuilder
下一篇: Why does StringBuilder access appear to be synchronized?