跳到主要内容

16.2 StringBuilder

String和StringBuilder的区别:

  • String具有不可变性,而StringBuilder不具备

当频繁操作字符串是,使用StringBuild。

StringBuilder和StringBuffer的区别:

  • 二者方法基本相似
  • StringBuffer线程相对安全,性能低
  • StringBuilder线程相对不安全,性能高

示例:

public class StringBuilderDemo1 {
public static void main(String[] args) {
// 定义字符串"你好"
StringBuilder str = new StringBuilder("你好");
// 在"你好"后面添加内容,将字符串编程"你好,imooc"
// str.append(',');
// str.append(",imooc");
System.out.println("str=" + str.append(',').append("imooc"));
// 将字符串变成"你好,iMOOC"
// 两种方式:
// 1、使用delete()删除小写的imooc再插入大写的MOOC
// System.out.println("替换后:" + str.delete(4, 8).insert(4, "MOOC"));
// 2、使用replace()替换
System.out.println("替换后:" + str.replace(4, 8, "MOOC"));
// 在字符串"你好,iMOOC"中取出"你好"并输出
System.out.println(str.substring(0, 2));
}
}

常用方法: