Java:关于值传递你需要了解的事情
我们都知道,在Java中,方法的参数传递永远都是指值传递。让我们来看一看基本类型和集合的参数传递在内存中是如何体现的。
在讨论Java中参数是如何传递之前,我们有必要先弄清楚Java的变量(主要指的是基本类型和对象)是怎么存储在内存中的。
基本类型一般都存储在堆栈中;对于Java对象,实际的对象数据存储在堆中,而对象的指针(指向推中的对象)存储在堆栈中。
1.传值 vs 传引用
“传值”和“传引用”分别是什么意思:
传值:当方法参数是值传递时,意味着原参数的一个拷贝被传到了参数内部而不是原始参数,所以任何对于该参数的改变都只会影响这个拷贝值。
传引用:当方法参数是引用传递时,意味着原始参数的引用或者说指针被传递到了方法内部,而不是这个原始参数的内容。
2.在Java中参数是怎么传递的
在Java中,不管原始参数的类型是什么,参数都是按值传递的。每
