/*
* StringBuffer
* 是一個存儲字符的容器
* StingBuffer 底層是依賴了一個字符數(shù)組才能存儲字符數(shù)據(jù)的,該字符串?dāng)?shù)組默認(rèn)的初始容量是16,如果字符數(shù)組的長度不夠使用時,自動增長1倍;
* 容器一般都具備增刪查改的功能
* StringBuffer中的方法
* 1.增加
* append( ) 可以添加任意類型的數(shù)據(jù),并且都會轉(zhuǎn)換成字符串,追加在數(shù)據(jù)末尾
* insert(int offset, boolean b) 在offset的位置插入任意類型的數(shù)據(jù)
* 2.刪除
* delete(int start, int end) 根據(jù)開始start和結(jié)束end的索引值刪除字符;刪除的時候也是包含頭不包含尾部
* deleteCharAt(int index) 根據(jù)索引值刪除一個字符
* 3.修改
* replace(int start, int end, String str) 將開始和結(jié)束位置的內(nèi)容替換成str;
* reverse() 倒置stringBuffer中的內(nèi)容
* setCharAt(int index, char ch)將指定位置的字符替換,只能替換單個字符
* subString(int start, int end) 根據(jù)開始和結(jié)束索引截取子串
* ensureCapacity(int minicapticy) 指定StringBuffer的默認(rèn)長度
* 4.查找
* indexOf(String str, int fromIndex) 指定開始查找子串的位置,返回第一次出現(xiàn)的索引值
* capacity() 查看當(dāng)前字符數(shù)據(jù)的長度,
* charAt(int index) 根據(jù)指定的索引值查找字符
* length() 獲取字符的個數(shù)
* toString() 將字符串緩沖對象中的內(nèi)容轉(zhuǎn)換為字符串
*
*/
public class Demo9 {
public static void main(String[] args) {
// 構(gòu)造一個不帶參數(shù)的字符串緩沖類的對象,是一個空容器
StringBuffer sb = new StringBuffer();
sb.append("abcd");
sb.append('你');
sb.append(true);
sb.append(3.14);
sb.insert(3,"你好");
sb.delete(3, 5);
sb.deleteCharAt(4);
sb.replace(0, 2, "你好");
sb.reverse();
System.out.println(sb);
System.out.println(sb.indexOf("好你",1));
System.out.println(sb.substring(1, 3));
System.out.println(sb.capacity());
System.out.println(sb.toString());
}
}