StringBulider與 StringBuffer

<small>

1.StringBuilder 類

可變長字符串類型,經常修改 String 類型的引用值,建議使用這個

string→StringBulider
StringBulider sb=new StringBuilder( );//創(chuàng)建空字符串不是 null
String str1="我愛你中國"
StringBulider sb=new StringBuilder( str1);
String str2=sb.toString;
增 append(String subStr)

確實可以返回一個StringBulider,但是并不需要,StringBulider自身維護一個可變長度的字符序列,每當調用 append 方法時,就會根據 append 子串長度,對自身維護字符序列進行相應的擴容,然后將子串字符序列,依次寫入擴容后的 String
所以只要經過 append 方法,StringBulider原序列就已經發(fā)生了變化

StringBulider sb=new StringBulider("學號 java");
sb=sb.append(",走遍天下都不怕");//不好的寫法
sb.append(",走遍天下都不怕");//正確的寫法
System.out.println(sb);//學好 Java,走遍天下都不怕
刪delete(int startIndex,int endIndex)

也是前包括后不包括原則

sb.delete(7,15);//學號 Java,
sb.append("為了更好地工作")//學好 java,為了更好的工作!
改replace(int start,int end,String Str)
sb.replace(7,14,"為了改變世界");//學好 java,為了改變世界
插insert(int insertIndex, String subString)

在指定下標前,插入子串

sb.insert(7,"努力工作,");//學好 java,努力工作,為了改變世界!

2.StringBuffer :可變長字符串類型
與StringBulider一樣都有增刪改插等方法
兩者區(qū)別與聯(lián)系:
1、兩者在物理方法上,完全一模一樣
2、StringBuffer 是線程安全的,性能慢
StringBulider是線程不安全的,性能快

如今服務器性能已近得到很大程度的提升,如果在可以忽略兩者的微弱的性能差異,兩者隨便使用
但是需要考慮到兩者的線程安全問題

String Buffer 中含有 reverse 方法可以將字符串逆轉;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,767評論 18 399
  • java筆記第一天 == 和 equals ==比較的比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量...
    jmychou閱讀 1,518評論 0 3
  • 一、基本數據類型 注釋 單行注釋:// 區(qū)域注釋:/* */ 文檔注釋:/** */ 數值 對于byte類型而言...
    龍貓小爺閱讀 4,289評論 0 16
  • 來寫一寫發(fā)生在身邊的一件事 我還是不愿意去理解對方的一件事 A是我的閨蜜A和B在一起也有六年了 我的印象里他們的愛...
    洪怪咖閱讀 242評論 3 1
  • 你沒有遇到過一個人,你很喜歡她,而他也喜歡你,就在大家都認為你們將會成為朋友圈秀恩愛的范本的時候,他卻遲遲不肯對你...
    野蠻生長Vickyee閱讀 298評論 0 5