最近有同学问我关于Java中值传递与引用传递的问题,在此小结一下
值传递是指在函数调用时将实参内容复制一份传递给形参,这样在函数中改变该参数不会对原参数产生影响。
引用传递是指将对象地址的引用传递给该函数,这样在函数中改变该参数会对原参数产生影响。
两者的主要区别在于:是否将实参内容复制一份传递给了形参!
举个最简单的例子:
public class test { public static void main(String[] args) { int num = 10; changeNum(num); System.out.println(num); } public static void changeNum(int num){ System.out.println(num); num = 20; System.out.println(num); } }