将自己设置为null - Java

Min*_*any 1 java null linked-list

我遇到了以下问题:

删除单链表中间的节点,只允许访问该节点.(没有给出头)现在有很多解决方案,当要删除的元素是最后一个节点时它们都不起作用.

为什么这不起作用?

public static void removeNode (Node n){
    if(n.next == null){ //n is the last node
        n= null;
        return;
    }
    //handling general case here
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*oni 6

Java按值传递参数,因此将n设置为null在方法之外没有任何影响.这意味着该方法在传递列表的最后一个节点时基本上不执行任何操作.