参数传递,可以理解当我们要调用一个方法时,我们会把指定的数值,传递给方法中的参数,这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算了。这种传递方式,我们称为参数传递。
1、值传递
基本数据类型的数据作为方法的参数进行传递,那么在方法中会另外开辟一个新的内存空间,跟原来的内存空间不是一个内存空间。如果在方法中对参数的值进行更改,不会影响原来的内存空间的值。如果非要获取方法中修改后的值则需要把修改后的值返回出来。
2、引用传递
如果传递的是对象或数组,实际上是把对象或数组的引用传递到方法中。如果在方法中对引用的对象或数组做任何修改,都会影响原来的内存空间的值,即修改了原来内存空间,其实操作的是同一份内存空间。
通过上面的两段程序可以得出如下结论:
当调用方法时,如果传入的数值为基本数据类型(包含String类型),形式参数的改变对实际参数不影响
当调用方法时,如果传入的数值为引用数据类型(String类型除外),形式参数的改变对实际参数有影响