亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java字符串連接最佳實踐?

Java字符串連接最佳實踐?

aluckdog 2018-07-21 12:18:34
java連接字符串有多種方式,比如+操作符,StringBuilder.append方法,這些方法各有什么優劣(可以適當說明各種方式的實現細節)?按照高效的原則,那么java中字符串連接的最佳實踐是什么?有關字符串處理,都有哪些其他的最佳實踐?
查看完整描述

1 回答

?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

使用+來拼接字符串,使用javap命令來反編譯代碼,可以看出實際上編譯器會自動創建StringBuilder,調用它的append方法來拼接字符串。
如果在一個for循環語句中,循環100次,使用+來拼接字符串的話,就會創建100次StringBuilder對象,這樣就很消耗內存,所以,在進行復雜字符串拼接的時候,還是建議使用StringBuilder來拼接字符串,就算循環1000次,也只是創建一次StringBuilder對象。

查看完整回答
反對 回復 2018-07-24
?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

+ 操作和 StringBuilder 都能連接字符串,
+ 的優勢在于:語法簡單,容易書寫。缺點是:對于動態生成且合并次數過多的字符串,優化不足,需要反復申請內存。
StringBuilder 的優勢在于:能夠預先分配內存,對于需要進行多次拼接的字符串,優化了拼接時的內存和時間的消耗。缺點是:書寫復雜,對于較簡單且確定的字符串,運行效率反而比 + 差。

你可以這么理解:絕大多數情況下,如果字符串拼接在循環中(也就是需要反復進行),則偏向于使用 StringBuilder ,而只是常規的拼接,則使用 + 即可。另外,如果需要在多個方法間傳遞字符串進行組裝,則傳遞 StringBuilder 比較合適。


查看完整回答
反對 回復 2018-07-24
  • 1 回答
  • 0 關注
  • 756 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號