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