JAVA的参数传递倒底是值传递还是引用传递,我觉得两种说法都没错,关键是看怎么理解“引用”和“引用传递”. (一)从编译原理的角度讲,所有那些无法通过形参来修改实参本身的传递机制都是“值传递”,在JAVA中,你只能通过在形参上调用方法来修改实参所引用的那个对象,却修改不了实参本身(不能使它引用到另个对象),如:void f(ArrayList list) { list = new ArrayList(); //不影响外边的实参.}所以从这个角度,JAVA中根本就没有“引用传递”(不像C
点击进入_很多其它_Java千百问 1.什么是值传递 值传递,是将内存空间中某个存储单元中存放的值,传送给还有一个存储单元.(java中的存储单元并不是物理内存的地址,但具有相关性) 比如: //定义了一个改变參数值的函数 public static void changeValue(int x) { x = x *2; } public class TestMain{ //调用该函数 int num = 5; System.out.println(num); changeValue(num