StringBuffer在赋值时指向原数据

先贴代码

        StringBuffer a = new StringBuffer();
        a.append("1");
        StringBuffer b = new StringBuffer();
        b = a;
        b.append("2");
        System.out.println("a:"+a);
        System.out.println("b:"+b);    

结果

a:12
b: 12

在调其他接口时用buffer写的,但循环调接口时发现入参的StringBuffer的参数每循环一次都会变多,后来发现新建的stringbuffer b增加了之后对赋值的a也会有影响,只是将新的b的数值指向了a。

原文地址:https://www.cnblogs.com/caixiaoyou/p/10413360.html