字符串的内容不可更改:
每一个字符串都是固定的值 无法在原字符串上直接修改<br /> 每次修改字符串的值都是重新开辟空间<br /> 并更改地址<br /> <br />例如:<br />`String str="哈哈";`<br />` str+="ab";`<br />`System.out.println(str); //结果输出:哈哈ab`<br />"哈哈"占用一个堆内存 "ab"占用一个堆内存 最终结果str又占用一个<br />所以这样会产生大量垃圾对象<br /> 字符串不可变特性 每次更改字符串 都会重新开辟空间<br /> 所以不推荐使用字符串进行大批量的拼接操作<br /> 这样会产生大量垃圾对象
推荐使用StringBuffer和StringBuilder(后面讲)
字符串的匿名对象:
System.out.println(“HelloJava”);
每一个字符串都是String类的匿名对象
String str="qq"; 每一个字符串都相当于开辟堆内存空间