String:
1、是对象不是原始类型。
2、为不可变对象,一旦被创建,就不能修改它的值。
3、对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。
4、String 是final类,即不能被继承。
StringBuffer:
1、是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象,而是只对这一个对象操作。
2、它只能通过构造函数来建立:StringBuffer sb = new StringBuffer();。
3、对象被建立以后,在内存中就会分配内存空间,并初始保存一个null。通过它的append方法向其赋值。
字符串连接操作中StringBuffer的效率比String高。