SringBuffer类
由于String类声明后,于是有了StringBuffer类和StringBuilder类。
StringBuffer类和StringBuilder类都需要通过构造方法进行实例化对象,而后才能调用方法处理。
StringBuffer和StringBuilder的区别
StringBuffer从JDK1.0开始提供,StringBuilder从JDK1.5开始提供。这两个类的功能,都是可以修改的字符串类型,唯一的区别在于StringBuffer类中的方法使用了synchronize关键字进行修饰,适合用于多线程访问下的同步处理;而StringBuilder类中的方法没有使用synchronize关键字,属于非线程安全的方法。
方法 | 类型 | 描述 |
---|---|---|
public StringBuffer() | 构造 | 创建一个空的StringBuffer对象 |
public StringBuffer(String str) | 构造 | 将收到的str内容变为StringBuffer类对象 |
public StringBuffer append(Object obj) | 普通 | 内容连接,等价于String中的"+" |
public StringBuffer insert(int office,Object obj) | 普通 | 指定索引位置插入obj |
:public StringBuffer delete(int start,int end) | 普通 | 删除指定索引范围的数据 |
:public StringBuffer reverse() | 普通 | 反转字符串 |
代码实现:
//无参构造方法
StringBuffer sb1 = new StringBuffer();
//有参构造
StringBuffer sb2 = new StringBuffer("123456798");
//数据添加
sb1.append("abc").append("de");
System.out.println("sb1 = " + sb1);
System.out.println("sb2 = " + sb2);
//数据删除
System.out.println("删除后:" + sb1.delete(0,2));
//插入数据
System.out.println("插入数据后:" + sb1.insert(0,"ab"));
//内容反转
System.out.println("内容反转:" + sb2.reverse());
输出内容:
sb1 = abcde
sb2 = 123456798
删除后:cde
插入数据后:abcde
内容反转:897654321