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


相關文章

這個網誌中的熱門文章

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

【國泰KOKO COMBO icash】2019權益更新!網購/超商/交通5%回饋!(需當月消費5000)

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

【台新@GoGo】一般消費1.5%網購3.5%!行動支付/保費同享優惠密技!

【台新FlyGo】出國神卡新登場!台新飛狗卡機票最高5%、國外最高2.8%!

TOEIC多益成績分數查詢、計算標準與換算對照表

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

【華南新戶5%】限時申辦華南指定icash聯名卡獨享2019年全年網購5%!(2018/12/15前申辦)

【玉山Pi信用卡】Pi拍錢包限定資格會員+玉山新戶辦卡拿1000!(~2018/12/31)

【符碼刷卡報】超商消費繳費懶人包+優惠總整理