Java_StringBuffer类

Java常用实用类学习——StringBuffer类

StringBuffer类与String类不同,StringBuffer类的对象的的实体的内存空间可以自动改变大小,便于存放一个可变的字符序列。尽管String类是Java.lang包中的final类,但该类提供了修改字符序列的方法。

StringBuffer类的对象

StringBuffer类有3个构造方法

StringBuffer();

使用无参的构造方法创建一个StringBuffer对象,那么分配给该对象的实体初始容量可以容纳16个字符,实体容量大于16时,容量自动增加。StringBuffer对象可以通过***length()方法获取实体中存放的字符序列的长度,通过capacity()***方法获取当前实体的实际容量。

StringBuffer(int size);

使用本构造方法创建一个StringBuffer对象,那么可以分配给该对象的实体初始容量为参数size指定的字符个数,实体容量大于size时,容量自动增加。

StringBuffer(String s);

使用本构造方法创建一个StringBuffer对象,那么可以分配给该对象的实体初始容量为参数s的字符序列的长度再加16。

StringBuffer类的常用方法

append();

  • StringBuffer append(String s):

将字符串s的字符序列追加到当前StringBuffer对象的字符序列中,并返回当前对象的引用

  • StringBuffer append(int n):

将int型数组n转换为String对象,再将其加入当前StringBuffer对象的字符序列中,并返回当前对象的引用

  • StringBuffer append(Object o):

将一个对象o的字符序列表示追加到当前StringBuffer对象的字符序列中,并返回当前对象的引用

类似的方法还有**StringBuffer append(long n)StringBuffer append(boolean n)StringBuffer append(float n)StringBuffer append(double n)StringBuffer append(char n)**。

1
2
3
StringBuffer s = new StringBuffer("我喜欢");
s.append("篮球");
//当前s的实体为:我喜欢篮球

public char charAt(int n);

得到对象的字符序列位置n上的字符

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
char c = s.charAt(2);
//c为:欢

public void setCharAt(int n,char ch);

将对象的字符序列位置n上的字符用参数ch代替

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
s.charAt(3'足');
//此时s的实体为:我喜欢足球

StringBuffer insert(int index,String str);

将str插入到index位置,并返回当前对象的引用

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
s.charAt(3,"唱、跳、rap和");
//此时s为:我喜欢唱、跳、rap和篮球

public StringBuffer reverse();

将当前对象实体中的字符序列翻转

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
s.reverse();
//此时s为:球蓝欢喜我

StringBuffer delete(int startIndex,int endIndex);

将当前对象的字符序列中删除一个子字符序列,删除的子字符序列从下标startIndexendIndex-1

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
s.delete(3,5);
//此时s为:我喜欢

StringBuffer replace(int startIndex,int endIndex,String str);

将当前对象的字符序列从下标startIndexendIndex-1替换为参数str

1
2
3
StringBuffer s = new StringBuffer("我喜欢篮球");
s.replace(3,5,"足球");
//此时s为:我喜欢足球
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2023-2024 LittleWin
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信