基本类型和引用类型的参数传递有以下区别:

  1. 基本类型参数传递:当将基本类型的变量作为参数传递给方法时,传递的是该变量的值的副本,即在方法内部对该参数的修改不会影响原始变量的值。

示意图如下:

原始变量           方法内部
+------+         +------+
|  5   |         |  5   |
+------+         +------+
   |                 |
   +--传递副本--->    |
   |                 |
+------+         +------+
|  5   |         |  5   |
+------+         +------+
  1. 引用类型参数传递:当将引用类型的变量作为参数传递给方法时,传递的是该变量的引用,即在方法内部对该参数的修改会影响原始变量指向的对象。

示意图如下:

原始变量            方法内部
+------+          +------+
|  obj |          |  obj |
+------+          +------+
   |                 |
   +--传递引用--->    |
   |                 |
+------+          +------+
|  obj |          |  obj |
+------+          +------+

需要注意的是,当在方法内部重新为引用类型参数赋予新的对象时,不会影响原始变量指向的对象。

示意图如下:

原始变量            方法内部
+------+          +------+
|  obj |          |  obj |
+------+          +------+
   |                 |
   +--传递引用--->    |
   |                 |
+------+          +------+
|  obj |          |  obj2|
+------+          +------+
``
基本类型和引用类型的参数传递的区别画图说明

原文地址: https://www.cveoy.top/t/topic/hSSo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录