解决方案 »

  1.   

    StringBuilder 是对象,String是java中的特殊基本类型,每一个String都是内存中的静态字符串变量,这就是要用StringBuffer来做字符串拼接而不要用String的原因,后者会产生很多内存字符串碎片StringBuilder str1 = new StringBuilder();--你实例化了一个StringBuffer的对象,并用str1引用指向这个对象实例
    str1=str---你把str1引用指向之前的str引用,str1原来的StringBuffer对象实例成为孤立对象实例(无引用指针),很快会被GC垃圾回收
    str1.append("str也增加了!");--现在str1和str都指向之前的StringBuffer对象实例,对str1和str的操作都是对之前的StringBuffer对象实例的操作,当然会增加了
      

  2.   

     str1=str; 
    楼主需要复习面向对象基本知识。