java中的参数传递之值传递和引用传递

 首先,在java中有很多人说java不管什么都是值传递,这是错误的。

  • java中的值传递

在java中值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。简单来说就是直接复制了一份数据过去,因为是直接复制,所以这种方式在传递时如果数据量非常大的话,运行效率自然就变低了。所以值传递一般是在数据比较小的时候,像java中的基本类型。


  • java中引用传递阿斯顿

引用传递其实就弥补了上面说的不足,如果每次传参数的时候都复制一份的话,如果这个参数占用的内存空间太大的话,运行效率会很底下,引用传递就是直接把内存的地址传过去,也就是说引用传递时,操作的其实都是源数据,这样的话修改有时候会冲突,记得用逻辑弥补下就好了,具体的数据类型就比较多了,比如Object,二维数组,List,Map等除了基本类型的参数都是引用传递。

猜你喜欢

转载自blog.csdn.net/zy934236179/article/details/81110055