java 的参数传递
/**
* java 参数传递
*
* @time 下午8:54:44
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public class test {
/**
* @param args
*/
public static void main(String[] args) {
//
int a = 0;
System.out.println("before change a=" + a);
changeInt(a);
// 修改后结果
System.out.println("after change a=" + a);
}
/**
* channge value
*/
private static int changeInt(int ga) {
ga++;
return ga;
}
}
运行结果:
before change a=0
after change a=0
传值调用,改掉的是副本,跟c/c++中的值传递类似
如果想改变其值,需找到其值所存放的位置,难点是动态分配内存,如果能找到其地址,读出修改应该是可以完成
如果是采用按址传递的参数是可以改变其值的(同c/c++中的变量指针/引用参数)
所以说这个问题个人觉得没法回答的太绝对