Java StringBuffer、StringBuilder常用方法
阿新 • • 發佈:2020-12-16
package com.heilong.stringbuffer;
/*
* StringBuffer 儲存字元的容器
*
* 增加
* append(boolean b) 可以新增任意型別的資料
* insert(int offset, boolean b) 指定插入的索引值,插入對應的內容
* 刪除
* delete(int start, int end) 根據指定的開始與結束索引值刪除對應的內容
* deleteCharAt(int index) 根據指定的索引值刪除一個字元
*
* 修改
* replace(int start, int end, String str)
* reverse() 翻轉
* setCharAt(int index, char ch) 把指定索引值的字元替換成指定的字元
* substring(int start, int end) 根據索引值擷取字串
* ensureCapacity(int minimumCapacity) 指定StringBuffer內部字元陣列的長度
*
* 檢視
* indexOf(String str, int fromIndex) 查詢指定字串第一次出現的索引值,並且指定查詢開始的索引位置
* capacity() 檢視當前字元陣列的長度
* charAt(int index) 根據指定索引值查詢字元
* lastIndexOf(String str)
* length()
* toString() 把字串類的內容轉換成字串返回
*
* StringBuffer和StringBuilder
* 相同點:
* 1.兩個類都是字元緩衝類
* 2.兩個類的方法都是一致的。
* 不同點:
* 1.StringBufer是執行緒安全的,操作效率低;StringBuilder是執行緒非安全的,操作效率高。
* 2.StringBufer是jdk1.0出現的,StringBuilder是jdk1.5出現的。
*
* 推薦使用StringBuilder:因為操作效率高。
* */
public class Demo1 {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
sb.append("abcdef");
sb.insert(2, "小小");
System.out.println("字串緩衝類的內容:" + sb);
sb.delete(2, 4);
System.out.println("字串緩衝類的內容:" + sb);
sb.deleteCharAt (2);
System.out.println("字串緩衝類的內容:" + sb);
sb.replace(1, 2, "bc");
System.out.println("字串緩衝類的內容:" + sb);
sb.reverse();
System.out.println("字串緩衝類的內容:" + sb);
sb.setCharAt(2, 'd');
System.out.println("字串緩衝類的內容:" + sb);
System.out.println ("字串緩衝類的內容:" + sb.substring(1,6));
sb.reverse();
System.out.println("字串緩衝類的內容:" + sb);
int index = sb.indexOf("bc", 0);
System.out.println("索引值:" + index);
System.out.println("字元陣列長度:" + sb.capacity());
System.out.println("字元個數:" + sb.length());
System.out.println("字元:" + sb.charAt(2));
String str = sb.toString();
System.out.println("字串內容:" + str);
}
}