StringBuffer:StringBuffer類型
描述:在實際應用中,經常回遇到對字符串進行動態修改。這時候,String類的功能受到限制,而StringBuffer類可以完成字符串的動態添加、插入和替換等操作。
1、構造函數。
2、方法。
說明:
1. 所有方法均為public;
2. 書寫格式:[修飾符] <返回類型> <方法名([參數列表])>
如:
static int parseInt(String s) 表示:此方法(parseInt)為類方法(static),返回類型為(int),方法所需參數為String類型。
描述:在實際應用中,經常回遇到對字符串進行動態修改。這時候,String類的功能受到限制,而StringBuffer類可以完成字符串的動態添加、插入和替換等操作。
1、構造函數。
-
StringBuffer() :構造一個沒有任何字符的StringBuffer類。
StringBuffer(int length) : :構造一個沒有任何字符的StringBuffer類,并且,其長度為length。
StringBuffer(String str) :以str為初始值構造一個StringBuffer類。
2、方法。
說明:
1. 所有方法均為public;
2. 書寫格式:[修飾符] <返回類型> <方法名([參數列表])>
如:
static int parseInt(String s) 表示:此方法(parseInt)為類方法(static),返回類型為(int),方法所需參數為String類型。
-
1. StringBuffer append(boolean b)
2. StringBuffer append(char c)
3. StringBuffer append(char[] str)
4. StringBuffer append(char[] str, int offset, int len)
5. StringBuffer append(double d)
6. StringBuffer append(float f)
7. StringBuffer append(int i)
8. StringBuffer append(long l)
9. StringBuffer append(Object obj)
10. StringBuffer append(String str)
11. StringBuffer append(StringBuffer sb)
以上的方法都是向字符串緩沖區“追加”元素,但是,這個“元素”參數可以是布爾量、字符、字符數組、雙精度數、浮點數、整型數、長整型數對象類型的字符串、字符串和StringBuffer類等。如果添加的字符超出了字符串緩沖區的長度,Java將自動進行擴充。
String question = new String("1+1=");
int answer = 3;
boolean result = (1+1==3);
StringBuffer sb = new StringBuffer();
sb.append(question);
sb.append(answer);
sb.append('\t');
sb.append(result);
System.out.println(sb);
結果為:
1+1=3 false
- 12. int capacity() :返回當前StringBuffer對象(字符串緩沖區)的總空間,而非字符號串的長度。
13. char charAt(int index) :在當前StringBuffer對象中取索引號為index的字符。第一個字符的索引為“0”
14. StringBuffer delete(int start, int end) :刪除當前StringBuffer對象中以索引號start開始,到end結束的子串。
15. StringBuffer deleteCharAt(int index) :刪除當前StringBuffer對象中索引號為index的字符。
16. void ensureCapacity(int minimumCapacity) :重新設置字符號串緩沖區的總空間。如果minimumCapacity大于當前的總空間,則新的空間被設置:一種結果是minimumCapacity;另一種結果是{“老空間”乘2加2}。
StringBuffer sb1 = new StringBuffer(5);
StringBuffer sb2 = new StringBuffer(5);
sb1.ensureCapacity(6);
sb2.ensureCapacity(100);
System.out.println( "sb1.Capacity: " + sb1.capacity() );
System.out.println( "sb2.Capacity: " + sb2.capacity() );
結果為:
sb1.Capacity: 12
sb2.Capacity: 100
- 17. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) :從當前StringBuffer對象的索引號srcBegin開始,到srcEnd結束的子串,賦值到字符數組dst中,并且從dst的索引號dstBegin開始。
StringBuffer sb = new StringBuffer("I love her!");
char[] i = {'I',' ','l','o','v','e',' ','y','o','u'};
sb.getChars(7,10,i,7);
System.out.println( "sb: " + sb );
結果為:sb: I love her!
- 18. int indexOf(String str) :返回當前StringBuffer對象中,第一個滿足str子串的位置。
19. int indexOf(String str, int fromIndex) :從當前StringBuffer對象的fromIndex開始查找,返回第一個滿足str子串的位置。
20. StringBuffer insert(int offset, boolean b)
21. StringBuffer insert(int offset, char c)
22. StringBuffer insert(int offset, char[] str)
23. StringBuffer insert(int index, char[] str, int offset, int len)
24. StringBuffer insert(int offset, double d)
25. StringBuffer insert(int offset, float f)
26. StringBuffer insert(int offset, int i)
27. StringBuffer insert(int offset, long l)
28. StringBuffer insert(int offset, Object obj)
29. StringBuffer insert(int offset, String str)
以上的方法都是在當前StringBuffer對象中插入一個元素,在索引號offset處插入相應的值。
30. int lastIndexOf(String str) :返回當前StringBuffer對象中,最后一個滿足str子串的位置。
31. int lastIndexOf(String str, int fromIndex) :從當前StringBuffer對象的fromIndex開始查找,返回最后一個滿足str子串的位置。
32. int length() :返回當前StringBuffer對象(字符緩沖區)中,字符串的長度。注意:此方法與capacity() 不同。
33. StringBuffer replace(int start, int end, String str) :替換當前StringBuffer對象的字符串。從start開始,到end結束的位置替換成str。
34. StringBuffer reverse() :將字符串翻轉。
StringBuffer sb = new StringBuffer("0123456789");
System.out.println( "sb.reverse(): " + sb.reverse() );
結果為:sb.reverse(): 9876543210
- 35. void setCharAt(int index, char ch) :設置索引號index的字符為ch。
36. void setLength(int newLength) :重新設置字符串緩沖區中字符串的長度,如果newLength小于當前的字符串長度,將截去多余的字符。
StringBuffer sb = new StringBuffer("0123456789");
sb.setLength(5);
System.out.println( "sb: " + sb );
結果為:sb: 01234
- 37. String substring(int start) :取當前StringBuffer對象中,從start開始到結尾的子串。
38. String substring(int start, int end) :取當前StringBuffer對象中,從start開始到end的子串。
39. String toString() :將當前StringBuffer對象轉換成String對象。