java連接字符串有多種方式,比如+操作符,StringBuilder.append方法,這些方法各有什么優(yōu)劣(可以適當(dāng)說(shuō)明各種方式的實(shí)現(xiàn)細(xì)節(jié))?按照高效的原則,那么java中字符串連接的最佳實(shí)踐是什么?有關(guān)字符串處理,都有哪些其他的最佳實(shí)踐?
2 回答

翻過(guò)高山走不出你
TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊
使用+來(lái)拼接字符串,使用javap命令來(lái)反編譯代碼,可以看出實(shí)際上編譯器會(huì)自動(dòng)創(chuàng)建StringBuilder,調(diào)用它的append方法來(lái)拼接字符串。
如果在一個(gè)for循環(huán)語(yǔ)句中,循環(huán)100次,使用+來(lái)拼接字符串的話,就會(huì)創(chuàng)建100次StringBuilder
對(duì)象,這樣就很消耗內(nèi)存,所以,在進(jìn)行復(fù)雜字符串拼接的時(shí)候,還是建議使用StringBuilder
來(lái)拼接字符串,就算循環(huán)1000次,也只是創(chuàng)建一次StringBuilder
對(duì)象。

哆啦的時(shí)光機(jī)
TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
這么晚才來(lái)貼鏈接真是抱歉.. Java 字符串拼接效率分析及最佳實(shí)踐
這篇文章里貼了我對(duì)java中幾種字符串拼接的比較及性能底下的原因分析,并貼了幾個(gè)我知道的字符串處理最佳實(shí)踐。
添加回答
舉報(bào)
0/150
提交
取消