ArrayList在函数中作为null启动并传递给另一个函数。在另一个函数中,我检查了null并为该列表清空,如果找到传递列表,则为其分配新创建的列表。但是,当我从该函数返回时,我发现该列表仍为null。当java按值传递时,传递列表中的任何更改都应反映在返回的列表中
答案 0 :(得分:0)
正如你所说,Java是按值传递的。
按值传递指向列表的指针。
方法无法使用新值(按引用传递)更新其调用者使用的变量。
您在方法中所能做的就是更改已传递的列表内容(通过调用相应的方法)。您无法将其更改为其他列表。如果你想这样做,你需要将新列表作为返回值发回。