理解不了可变性的看这里!
因为String类是由final修饰的,所以是不可变的(详情可见:http://www.cnblogs.com/dolphin0520/p/3778589.html)。另外我们可以看到,在没有new新的String时,对原来的字符进行修改,String的hashCode值会改变。
而StringBuild的hashCode值不变。
由上我们可以看出,String类具有不可变性,其字符串发生改变后会创建新的位置来存储;而StringBuild和StringBuffer是在原有对象上进行修改,其位置不变.