变量的值传递

Posted 刚子2013

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了变量的值传递相关的知识,希望对你有一定的参考价值。

基本类型、字符串String——传递的是实参的值

初始化定义变量m时,在内存中分配存储空间

m作为传入调用的方法中形参n时,在被调用的方法形参n分配独立于m的存储空间,所以在方法中n改变了值,但当方法调用结束之后,变量m的值仍原先值

集合、数组、对象——传递是集合的引用方法中的集合和传递的集合是一样的指向同一个集合。所以如果改变方法中的集合,方法外的集合也会同步改变

初始化定义变量时,该变量存储的是指向值的引用。

List list = new ArryList()

变量list存储的指向集合的引用地址,而非实际的集合。

所以当传入调用方法时,若在方法中改变传入的值,则方法调用结束之后,变量的值也同步改变

 

集合、数组、对象存储在堆中,用于动态内存分配,在堆中的内存可以随意的顺序分配和释放。指向的变量存储在栈中

以上是关于变量的值传递的主要内容,如果未能解决你的问题,请参考以下文章

变量的值传递

abap 值传递 引用传递

为什么java是只有值传递而没有引用传递

变量的值传递

python中的值传递和引用传递

js按值传递和按引用传递