在Java中,除了可以使用 String 類來存儲字符串,還可以使用 StringBuilder 類或 StringBuffer 類存儲字符串,那么它們之間有什么區(qū)別呢?
String 類具有是不可變性。如
從運(yùn)行結(jié)果中我們可以看到,程序運(yùn)行時會額外創(chuàng)建一個對象,保存 "helloworld"。當(dāng)頻繁操作字符串時,就會額外產(chǎn)生很多臨時變量。使用 StringBuilder 或 StringBuffer 就可以避免這個問題。至于 StringBuilder 和StringBuffer ,它們基本相似,不同之處,StringBuffer 是線程安全的,而 StringBuilder 則沒有實現(xiàn)線程安全功能,所以性能略高。因此一般情況下,如果需要創(chuàng)建一個內(nèi)容可變的字符串對象,應(yīng)優(yōu)先考慮使用 StringBuilder 類。
那么如何定義 StringBuilder 類的對象呢? 我們來看下面的代碼:
運(yùn)行結(jié)果: imooc
在編輯器中定義了一個 StringBuilder 對象,用來存儲字符串。認(rèn)識一下他吧??!
請點(diǎn)擊提交繼續(xù)學(xué)習(xí)吧!
請驗證,完成請求
由于請求次數(shù)過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報