StringBuffer的用法

来源:互联网 发布:八爪鱼淘宝营销大师 编辑:程序博客网 时间:2024/06/08 13:59

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。

和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

初始化

StringBuffer s = new StringBuffer("");

append方法

该方法的作用是追加内容到当前StringBuffer对象的末尾,类似于字符串的连接

例如:

StringBuffer sb = new StringBuffer(“abc”);

sb.append(aaa);

则对象sb的值将变成”abcaaa”。

使用该方法进行字符串的连接,将比String更加节约内容,例如应用于数据库SQL语句的连接,例如:

StringBuffer sb = new StringBuffer();

String name= “test”;

String pwd = “123”;

sb.append(“select * from user where username=“)

.append(name)

.append(“ and pwd=”)

.append(pwd);

这样对象sb的值就是字符串“select * from user where username=test and pwd=123”。

deleteCharAt方法

该方法的作用是删除指定位置的字符,然后将剩余的内容形成新的字符串

StringBuffer sb = new StringBuffer(“Test”);

sb. deleteCharAt(1);

对象sb的值变为”Tst”。

insert方法

该方法的作用是在StringBuffer对象中插入内容,然后形成新的字符串

StringBuffer sb = new StringBuffer(“TestString”);

sb.insert(4,false);

该示例代码的作用是在对象sb的索引值4的位置插入false值,形成新的字符串,则执行以后对象sb的值是”TestfalseString”。

reverse方法

该方法的作用是将StringBuffer对象中的内容反转,然后形成新的字符串

setCharAt方法

该方法的作用是修改对象中索引值为index位置的字符为新的字符ch

StringBuffer sb = new StringBuffer(“abc”);

sb.setCharAt(1,’D’);

则对象sb的值将变成”aDc”。