1. 两者都是用来表示字符串
2.前者进行字符串处理时,不生成新的对象,在内存使用中要优于后者
3.对一个字符串频繁进行操作,应该使用前者
4.前者每次修改都会修改对象自身,这是和后者最大的区别所在
5.前者线程是安全的
6.两者属于不同的类型,不能进行强转。StringBuffer sb = (StringBuffer)"acc"; //不存在继承关系,无法进行强转
7.前者常用方法
append(String str) ,//字符末尾追加
deleteCharAt(int index)//删除指定位置的字符
,delete(int a,int b),//删除索引a(包括)到索引b(不包括)之间的所有字符
insert(int offset,String str),//指定位置插入字符
reverse(String str) //内容反转
setCharSet(int index,char char) //修改对象中索引值为index位置的字符为新的字符char