对阿,但是你的方法中是 i=new Integer(9999); 传进方法的是一个引用的副本,你将这个副本指向一个新的对象,然后返回了。而外面的i引用依然是原来的那个。所以是8888
解决方案 »
- 求一个摇奖的算法或者思路
- java菜鸟对于JFrame小疑问
- ssh 两张表外键一对一查询
- 一个eclipse的使用问题----没有提示 ,点点后不能自动弹出条目
- hibernate2如何获取刚添加的新记录的ID
- 换了weblogic版本后,获得数据源连接抛出异常,急!!!
- 当client访问xml-rpc server 时候, 是否server端发布的java文件url是固定的? 他只是接口吗?
- 求教:用WEBLOGIC当JSP+Javabean服务器,运行时提示找不到Javabean?
- Netty4有什么好的学习资料或教程吗?
- 一个mybatis和springmvc结合的问题
- 用spring配置连接mysql数据库异常,大家帮忙啊,急!!!!
- OpenSessionInViewFilter在struts2中失效的问题
可见一斑了
方法的参数是引用传递
但是引用本身是值传递
你修改引用本身
public void changeMethod(Integer i){
i=new Integer(9999);
}
外面的i根本不会改变
另外,你想改变外面的8888,用Integer对象,不设返回值恐怕作不到的。
因为Integer使用了不变模式
public class Entity {
private Integer i;
set...
get...
}
public void changeMethod(Entity en){
en.set...(new Integer(9999));
}
稍作修改,你用这个试试