List对象是否通过引用传递?

可能重复:
Java是否通过引用传递?

List对象是否通过引用传递? 换句话说,如果我将一个ArrayList (java.util.ArrayList)对象传递给一个类,我更改它时会自动更新吗?

换句话说:如果我将一个ArrayList(java.util.ArrayList)对象传递给一个类,我更改它时会自动更新吗?

List对象是否通过引用传递?

参考价值将被传递

 public updateList(List names){ //.. } 

说明

当你调用updateList(someOtherList); 作为引用的someOtherList的值将被复制到names (方法中的另一个引用,逐位),所以现在它们都指向内存中的同一个实例,因此它将改变


看到

  • Java是“传递引用”还是“按值传递”?

是的,传递给方法的List通过引用传递。 在方法返回后,您在方法内添加到List任何对象仍将在List

如果在一个方法中添加列表,则第一个方法中的原始引用也将包含新项。

java是按值传递的,对于对象,这意味着引用按值传递 。

是的,因为您只是将ArrayList -Object的引用传递给您的Object

Does the List object passed by reference?

不,Java使用pass by value而不是pass by reference它做什么它传递对象引用内存地址表示的副本,所以当你传递一个列表时,你得到不同的引用,但指向相同的内存。