关于StringBuffer 的一个问题` 关键是这句y=x; 执行这句后,y变成一个局部变量了,跟传进来的b没有关系了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void operate(StringBuffer x, StringBuffer y){ y=x;//B=A以时,两个都是Ax.append(y);//A+A=AA} stringbuffer 是引用类型的产生AA,B的原因要考虑到局部变量和全局变量的区别 如果你在Y=x;这里来句话System.out.println(y);你就知道了 打印的y是A ,但是出了这个作用域 就没了 public static void operate(StringBuffer x, StringBuffer y){ y=x; x.append(y); } 这个方法 y=x,只是两个拷贝变量在赋值,并没有影响到原b所指向的对象。所以b所指向的对象仍然为B。要改变b所指向的对象的值 只能用方法来改变 比如y.append("b"); public static void operate(StringBuffer x, StringBuffer y){ y=x; x.append(y); } 这里只是把x的值赋给y了,所以此时y的只也是"A"了,两个"A"加起来就是"AA"了,但y还是指向b的引用,所以b的值是不会变的 这个地方你把穿进来的x值赋给Y了...你打印出来的值就是x的值..而不是y的值了 http://topic.csdn.net/u/20080509/20/5f9abbb6-cb46-4029-9f3f-bc95c1b165f9.html==============================================这是我以前发的,你看看吧. 提供个schema校验代码 求教设置了了jsp页面html的编码格式为何无效了? Javascript和struts的tiles功能是不是有冲突? struts2中ognl的问题 高分救助!statcvs问题。期待各位达人解决 一个简单的webservice问题?(急!!!希望那位前辈解答!!进来就有分!!) 这样的情况怎么使用多线程来处理? 用jBuilder2005+tomcat5.0怎么写webservice服务器端? dom 或者jdom 解析wsdl文件 求Java Excel API document 一个搜索提示框 关于 表无主键,以及hibernate查询的问题.....
y=x;//B=A以时,两个都是A
x.append(y);//A+A=AA
}
产生AA,B的原因要考虑到局部变量和全局变量的区别 如果你在Y=x;这里来句话System.out.println(y);
你就知道了 打印的y是A ,但是出了这个作用域 就没了
y=x;
x.append(y);
}
这个方法 y=x,只是两个拷贝变量在赋值,并没有影响到原b所指向的对象。所以b所指向的对象仍然为B。
要改变b所指向的对象的值 只能用方法来改变 比如y.append("b");
y=x;
x.append(y);
}
这里只是把x的值赋给y了,所以此时y的只也是"A"了,两个"A"加起来就是"AA"了,但y还是指向b的引用,所以b的值是不会变的