可能重複:
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更多的堆空間? –