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 类型如何清空呢!!!!


相關文章

這個網誌中的熱門文章

【汽機車燃料費攻略】2020/109年度信用卡回饋/分期整理!

【台新雙狗更新】@GoGo卡網購支付6%、FlyGo卡航旅6%!

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

【玉山U Bear卡】網購3.8%超商5%影音20%/icash限定8%!

【信用卡排行榜】2020國內外必辦現金回饋信用卡推薦!

【Richart Life】台新Pay+@GoGo+點10成金=最高26%!

【永豐大戶DAWHO】現金回饋信用卡國內2%國外3%最高8%!

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