值传递:(形式参数是基本数据类型):是方法在调用的时候,把实际参数的值传递给了形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的单元存储,所以在方法体中执行的形式参数不会改变实际参数的值。 常见的例子: 再从内存空间中分析: 测试得出的结论就是: 形式参数的改变 不会影响到 实际参数的值 。他们的存储地址不同 。 引用传递:(形式参数是引用型数据类型):也被称为地址传递,在方法调用时,实际参数是对象(或数组),这时实际参数与形式参数指向同一个地址,在方法执行中,对形式参数的操作就是对实际参数的操作,这个结果在方法结束被保留了下来,相当于就是形式参数和实际参数用的同一个内存地址,内存地址中的值发生了改变,两个 参数的值都会发生改变。 常见的例子: 从内存中看: 经过调用f()函数,把a数组的值引用传递后: 得出的结果:引用传值 传的是地址,形式参数的值发生改变会影响实际参数的值。