String类String类常用API应用–创建转换、截取、修改、查询StringBuffer类StringBuffersbnewStringBuffer(他往山外走);在结尾追加append(str)sb.append(!!).append(外面的世界);在指定位置插入insert(index,str)sb.insert(5,万里晴空);删除指定位置的一个字符deleteCharAt(index)sb.deleteCharAt(10);删除指定范围的字符delete(start,end)范围是[start,end)sb.delete(9,12);替换指定位置的字符setCharAt(index,ch)sb.setCharAt(0,你);替换指定范围的字符replace(start,end,str)替换的范围是[start,end)sb.replace(11,14,镜中花);在操作完成后将类型转为String缓冲区完成归还堆栈内存面试题String、StringBuffer、StringBuilder区别三个类的共同特点都是用于操作字符串类型数组的定义的类结构都是被final修饰的结构稳定没有子类String类和StringBuffer类的共同点都是在JDK1.0版本开始使用都是支持多线程操作更安全StringBuffer类和StringBuilder类的共同点都是操作可变字符串的数据类型都是在缓冲区完成字符串数据操作String类是定长字符串类型在堆栈内存中完成字符串数据操作StringBuilder类在JDK5版本开始使用只支持单线程操作更快捷String类为什么是不可变的String类底层是基于字符数组存储数组一旦创建长度固定因此fString类型值个数不可改变String类是final修饰的表示最终类即结构稳定不可变实现尾部追加的操作 与 append 区别主要是实现尾部追加的位置不同主要用于操作String类型数据即在堆栈内存中完成拼接操作append方法是由StringBuffer类或是StringBuilder类提供主要是在缓冲区完成。