黑馬程序員-第十二天( StringBuffer/StringBuilder)

---------------------- ASP.Net+Unity開發.Net培訓、期待與您交流! ----------------------

一, StringBuffer是字符串緩衝區是一個容器。
1,存儲
StringBuffer append(Object) :將指定數據作爲參數添加到已有數據結尾處,返回添加後的對象。
StringBuffer insert(int index,數據):可以將數據插入到指定index位置。
2,刪除
StringBuffer delete(int start,int end):刪除指定位置的字符串包括頭不包括尾。
StringBuffer deleteCharAt(int index):刪除指定位置的字符。
清空緩衝區:
delete(0,sb.length());
3,獲取
char charAt(int index);
int indexOf(String str);
int indexOf(String ,int)
int lastIndexOf(String);
int length();
String substring(int start,int end);返回字符串。
4,修改
StringBuffer repalce(int start,int end,String str):將字符串替換到指定的位置。不包括尾
void setCharAt(int index,char ch):替換某一位置的字符
5,反轉
StringBuffer reverse();將字符串進行反轉。
6,將緩衝區中指定的數據存儲在指定的字符數組中
void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin);
7,緩衝區的三個特點:
·長度是可以變化的,
·可以操作多種類型
·最終會通過toString方法變成字符串。

二,在jdk1.5版本後出現了StringBuilder
StringBuffer是線程同步的。
StringBuilder是線程不同步的。
當在單線程時StringBuffer效率比較低。需要判斷鎖。

多線程用StringBuffer
單線程用StringBuilder(以後開發多用)

注:java的升級:提高效率,簡化抒寫,提高安全性

---------------------- ASP.Net+Unity開發.Net培訓、期待與您交流! ----------------------

發佈了48 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章