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


相關文章

這個網誌中的熱門文章

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

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

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

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

【永豐大戶DAWHO】活存100萬內1.1%+16次免費跨轉跨提!

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

秒級偵測網頁更新變動通知(PageMonitor,Check4Change)

【永豐信用卡推薦方案】首刷800+指定卡再200或機場接送!

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

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