JAVA中StringBuffer的构造及其方法

来源:互联网 发布:博创软件 编辑:程序博客网 时间:2024/04/28 12:16

 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:

12sb2.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