StringBuffer 類是線程安全的可變字符序列,一個相似於String類的字符串緩衝區,二者本質上是同樣的,但StringBuffer類的執行效率要比String類快不少。String類建立的字符串對象是不可修改的,StringBuffer類建立的字符串序列是能夠修改的,且實體容量會隨着存放的字符串增長而自動增長。html
建立StringBuffer類安全
1 package com.mingri.chapter_02; 2 3 public class demo1 { 4 public static void main (String[] args) { 5 6 StringBuffer str1 = new StringBuffer(); 7 StringBuffer str2 = new StringBuffer("abc"); 8 StringBuffer str3 = new StringBuffer(22); 9 10 } 11 }
StringBuffer類經常使用方法app
StringBuffer類擁有String類中的方法,String類的方法參考 http://www.javashuo.com/article/p-npqclxlo-gp.htmlspa
追加數據到字符串序列中線程
1 package com.mingri.chapter_02; 2 3 public class demo1 { 4 public static void main (String[] args) { 5 6 StringBuffer sdf = new StringBuffer("門前大橋下"); // 建立StringBuffer對象 7 sdf.append("遊過一羣鴨"); // 追加字符串常量 8 StringBuffer tmp = new StringBuffer("快來快來數一數"); // 建立新的StringBuffer對象 9 10 sdf.append(tmp); // 追加StringBuffer對象 11 int x = 24678; // 建立整形變量 12 sdf.append(x); // 追加整形變量 13 System.out.println(sdf.toString()); // 輸出 14 15 } 16 }
修改指定索引的字符code
1 package com.mingri.chapter_02; 2 3 public class demo1 { 4 public static void main (String[] args) { 5 6 StringBuffer phoneNumber = new StringBuffer("18612345678"); 7 for (int i = 3; i <= 6; i++) { 8 phoneNumber.setCharAt(i, '*'); 9 } 10 11 System.out.println("幸運觀衆的手機號爲:" + phoneNumber); // 幸運觀衆的手機號爲:186****5678 12 13 } 14 }
插入字符串到指定索引位置htm
1 package com.mingri.chapter_02; 2 3 public class demo1 { 4 public static void main (String[] args) { 5 6 StringBuffer sbf = new StringBuffer(); 7 sbf.append("057號客戶請到窗口受理,"); 8 sbf.append("058號客戶請到窗口受理,"); 9 10 System.out.println("字符串原值:" + sbf); // 字符串原值:057號客戶請到窗口受理,058號客戶請到窗口受理, 11 12 sbf.insert(13, "01號VIP客戶請到窗口受理,"); // 插入VIP後:057號客戶請到窗口受理,01號VIP客戶請到窗口受理,058號客戶請到窗口受理, 13 14 System.out.println("插入VIP後:" + sbf); 15 16 } 17 }
刪除指定索引位置的字符串對象
1 package com.mingri.chapter_02; 2 3 public class demo1 { 4 public static void main (String[] args) { 5 6 // 刪除臺詞中的失誤片斷 7 String value = "各位觀衆你們好,歡迎準時打開電梯不對是電視機收看本節目......"; // 臺詞字符串 8 9 StringBuffer sbf = new StringBuffer(value); // 建立臺詞StringBuffer對象 10 System.out.println("原值爲:" + sbf); // 原值爲:各位觀衆你們好,歡迎準時打開電梯不對是電視機收看本節目...... 11 12 sbf.delete(14, 19); 13 14 System.out.println("刪除後:" + sbf); // 刪除後:各位觀衆你們好,歡迎準時打開電視機收看本節目...... 15 16 } 17 }