学习函数的时候问题

这里的a =1 b =2 为什么没有变化呢

在调用swap函数的时候,会把数值复制一份放入到swap的帧中,所以main中的a b 还是原来的数值

当传入是对象的时候就不一样了

这个时候a b的value会被改变,因为对象会放到堆里面,给栈一个引用地址而已,因为main方法和swap方法的引用地址都是一样的,所以a b的value会被改变

原文地址:https://www.cnblogs.com/jianguang/p/6709745.html