Java基礎-----StringBuffer類概述
阿新 • • 發佈:2018-12-01
概述
StringBuffer是一個可變的字元序列。
StringBuffer的構造方法:
1、public StringBuffer():無參構造方法。
2、public StringBuffer(int capacity):指定容量的字串緩衝區物件。
3、public StringBuffer(String str):指定字串內容的字串緩衝區物件。
StringBuffer的方法
1、public int capacity():返回當前容量。理論值。
2、public int length():返回長度(字元數)。實際值。
package StringBufferPackage; public class Demo1_StringBuffer { public static void main(String[] args) { StringBuffer sb1 = new StringBuffer(); System.out.println(sb1.length());//容器中的字元個數,實際值 System.out.println(sb1.capacity());//容器的初始容量,理論值 StringBuffer sb2 = new StringBuffer(10); System.out.println(sb2.length()); System.out.println(sb2.capacity()); StringBuffer sb3 = new StringBuffer("xiao"); System.out.println(sb3.length());//實際字元的個數 System.out.println(sb3.capacity());//字串的length + 初始容量 } }
StringBuffer的新增功能
1、public StringBuffer append(String str):可以把任意型別資料新增到字串緩衝區裡面,並返回字串區本身。
2、public StringBuffer insert(int offset,String str):在指定位置把任意型別的資料插入到字串緩衝區裡面,並返回字串緩衝區本身。
StringBuffer是字串緩衝區,當new的時候是在堆記憶體建立了一個物件,底層是一個長度為16的字元陣列,當呼叫新增的方法時,不會再重新建立物件,在不斷向原緩衝區新增字元。
package StringBufferPackage; public class Demo2_Append { public static void main(String[] args) { //三個引用變數指向同一個物件 StringBuffer str = new StringBuffer(); StringBuffer str1 = str.append("asc"); StringBuffer str2 = str.append("cdv"); System.out.println(str); System.out.println(str1); System.out.println(str2); StringBuffer s = new StringBuffer("123"); s.insert(2, "xiao");//在指定位置新增元素,如果沒有指定位置的索引就會報索引越界異常。 System.out.println(s); } }