开发者社区> 问答> 正文

[@倚贤][¥20]什么是值传递和引用传递?

黑琴白键 2018-10-30 00:04:30 42769

什么是值传递和引用传递?

分享到
取消 提交回答
全部回答(32)
  • 1888665840962722
    2019-08-29 17:07:27
    推荐

    值传递:把A的值拷贝给B,B修改后不影响A的数据 引用传递:传递值所在的地址AB共用一个数据,数据修改后,AB都会受到影响

    0 0
  • 滕先生
    2019-10-16 15:02:13

    值传递在方法的调用过程中,实参把它的实际值传递给形参,此传递过程就是将实参的值复制一份传递到函数中,这样如果在函数中对该值(形参的值)进行了操作将不会影响实参的值。因为是直接复制,所以这种方式在传递大量数据时,运行效率会特别低下。 引用传递弥补了值传递的不足,如果传递的数据量很大,直接复过去的话,会占用大量的内存空间,而引用传递就是将对象的地址值传递过去,函数接收的是原始值的首地址值。在方法的执行过程中,形参和实参的内容相同,指向同一块内存地址,也就是说操作的其实都是源数据,所以方法的执行将会影响到实际对象。

    1 0
  • 1146065838876765
    2019-08-29 09:34:26

    基础数据类型修改后不会影响原来的值-值传递 对象数据类型修改后会影响原来的值-引用传递

    0 0
  • 1025011911131969
    2019-08-24 22:39:19

    传递后原来值不变的就是值传递,原来值改变了就叫引用传递

    0 0
  • 游客tfqfrkibcqcqy
    2019-07-17 23:11:06

    值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。

    引用传递:(形式参数类型是引用数据类型参数):也称为传地址。方法调用时,实际参数是对象(或数组),这时实际参数与形式参数指向同一个地址,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,这个结果在方法结束后被保留了下来,所以方法执行中形式参数的改变将会影响实际参数。

    e43f4bbb814b45bcba5c65d0dccd59da_603ab829395f4c85a66900d566d53cec.jpg

    1 0
  • han1396735592
    2019-07-17 23:11:06

    通俗一点讲,传值就是数据的复制传递,不能改变原始的数据,引用就是拿到原始数据数据传递。能够改变原始的数据。

    0 0
滑动查看更多
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章