JAVA StringBuffer 类中赋值问题

StringBuffer 类中 定义str1和str2
将str1 赋给str2 str2=str1后它们2者是什么关系?
为什么改变其中任一个值 另一个的值也会随着改变?

StringBuffer 通过 new一个str1 后 就创建了两个对象 一个是对象 另一个是指向对象的类似于指针的东西,将str1 赋给str2 str2=str1后 其指针也就指向同一个对象上 所以 改变其中任一个值 另一个的值也会随着改变
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-18
StringBuffer 上的任何修改性的操作都是在同一个字符数组上进行的,
所以修改其中任一个值 另一个的值也会随着改变!
第2个回答  2013-11-18
StringBuffer str1= new StringBuffer();//1
StringBuffer str2 = new StringBuffer();//2
str2=str1执行后,指向同一个StringBuffer//1 的对象地址。
第2就不被引用,操作str1,str2都是操作第一个new StringBuffer() 所以改其中任一个值,另一个也会变。
第3个回答  2019-03-05
StringBuffer 互相赋值;
public static void zCoordinate (String str){
if (zCoordinate1.toString().equals(str)) return;
zCoordinate3.setLength(0);
zCoordinate3.append(zCoordinate2);
zCoordinate2.setLength(0);
zCoordinate2.append(zCoordinate1);
zCoordinate1.setLength(0);
zCoordinate1.append(str);
}
相似回答