StringBuilder和StringBuffer的差別及清空內容方式

在Java中常用到字串的處理,
但String本身是固定長度不能改變內容的,
我們常用+來連結附加字串其實相當耗費資源,
在大量處理字串的情況下我們有更好的選擇。

Java在J2SE5.0之後提供了StringBuilder類別,
他有許多好用的操作字串的方法如:
insert()、reverse()、replace()、append()等,
更多詳細的API可見:java.lang.StringBuilder 的API說明。

而很多人會有這樣的疑問(我也是一直弄不清楚才來寫這篇的XD),
StringBuilder和StringBuffer有什麼差別呢?
他們兩個提供了相同的介面,
然而在不需考量多執行緒同步的時候我們使用StringBuilder來獲得最佳的效率
要考慮多執行緒的情況下使用StringBuffer來讓類別自動處理同步的問題

另外這兩個類別雖然相當好用,
但似乎許多人都會找不到如何清空他,
這大概是因為單純看 method 時沒有看到叫做 clear() 之類的 method,
但其實我們還是可以透過 delete(int start, int end) 這個 method 來達成目的。
用法就像這樣:stringBuffer.delete(0, stringBuffer.length());

關鍵字:StringBuilder, StringBuffer, String, 字串處理, 不同, 清空, 內容, 如何
參考資料:
  1. java.lang.StringBuilder
  2. Java Gossip: StringBuilder 類別
  3. StringBuffer 类型如何清空呢!!!!


相關文章

這個網誌中的熱門文章

【全聯PX Pay】儲值/首刷/銀行卡友日攻略+常見問題Q&A!

【證件遺失補辦】身分證/健保卡/駕照/行照/信用卡總整理

【所得稅繳納攻略】2019信用卡刷卡/分期活動+拆單教學!

【博客來折價券】博客來免費序號e-coupon分享(持續更新)

【綜合所得稅攻略】2019所得稅有感降稅!重點變更+教學!

【超商懶人包】消費享10%回饋攻略+繳費取貨也能賺回饋?

【房屋稅繳納攻略】2019/108年度信用卡回饋/分期整理!

【銀行代碼查詢】3碼銀行代碼列表、7碼分行代碼查詢

【永豐銀行】想辦大戶被卡?永豐既有帳戶結清銷戶流程!

【永豐DAWHO攻略】申辦DAWHO帳戶/信用卡最佳申辦順序!