1.String和StringBuilder,StringBuffer的区别

都是用来定义一个字符串的

String适用于字符串内容不变的操作,或者字符串操作很少时

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。因为和 String 类不同,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

2.StringBuilder和StringBuffer的区别

它们之间最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。 但是StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

3.StringBuilder和StringBuffer中常用方法(两者中的方法都基本一样)

1.append()方法:追加内容到当前StringBuffer对象的末尾,类似于字符串的连接

注意:进行以下操作后并没有创建新的对象,但是String对象进行拼接后是创建了新对象的

eg:

StringBuffer sb = new StringBuffer(“abc”);
sb.append("true");

则对象sb的值将变成”abctrue”

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

eg:

StringBuffer sb = new StringBuffer(“TestString”);
sb.insert(4,false);
该示例代码的作用是在对象sb的索引值4的位置插入false值,形成新的字符串,则执行以后对象sb的值是”TestfalseString”。

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

eg:

StringBuffer sb = new StringBuffer(“KMing”);
sb. deleteCharAt(1);
该代码的作用删除字符串对象sb中索引值为1的字符,也就是删除第二个字符,剩余的内容组成一个新的字符串。所以对象sb的值变 为”King”。

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

eg;

StringBuffer sb = new StringBuffer(“abc”);
sb.setCharAt(1,’D’);
则对象sb的值将变成”aDc”。 

4.length方法

这个都知道

08-29 15:43