Java - 如何更改调用类中的方法变量?

时间:2017-12-21 15:10:24

标签: java

我尝试实现此mergeSort()方法而不使用 a return,但无法将变量存储到调用方法中。例如,当我在第一个mergeSort(head):{3,2}上调用head时,该方法将打印{2,3}意义列表实际上已正确排序,但在调用{{}的方法中1}},mergeSort()仍然是{3,2}。有没有什么方法可以更新调用类中的变量?

对算法本身的评论也很受欢迎,但请保留评论部分。

head

1 个答案:

答案 0 :(得分:0)

list = temp;

这一行使得方法中的list参数指向与您作为参数传递的列表不同的对象。

如下面的评论所示:

Instead of reasigning list=temp which creates a new entity. copy the contents of temp to list. list.clear(); Collections.copyList(list,temp)