可能重复:
StringBuilder and StringBuffer in JavaStringbuffer,Stringbuilder何时使用?
标准,以中StringBuffer
和StringBuilder
可能重复:
StringBuilder and StringBuffer in JavaStringbuffer,Stringbuilder何时使用?
标准,以中StringBuffer
和StringBuilder
如果你确实使用Java 5或更高,你一定不需要线程之间共享对象(我不记得需要这样做),StringBuilder
是一个更好的选择。
基本上你应该总是用StringBuilder
当你可以,以避免无谓的同步。诚然,大多数虚拟机处理非争用同步的方式是非常有效的,但如果你不需要它摆在首位...
StringBuilder
方法是不同步的,所以当你不使用多线程的部分而言,你可以用它选择,因为它会很快。
,另一方面StringBuffer
都的方法进行同步,因此是线程安全的。
你可以通过这个帖子: - Difference between StringBuilder and StringBuffer
+1恕我直言,如果你认为你需要线程之间共享一个StringBuffer你有严重的设计问题。 –
不要以为使用StringBuilder将不一定使用堆空间? –
@TheHunter:比较做什么?为什么你会期望StringBuilder使用比StringBuffer更多的堆空间? –